|
Página 1 de 1
|
Editar Archivo, Especial La Primer Linea?
Autor |
Mensaje |
Agamenon
Usuario
Registrado: Enero 2012
Mensajes: 36
Edad: 31 Ubicación:
|
Editar Archivo, Especial La Primer Linea?
tengo un script que genera un archivo tras el transcurso de un tiempo en un terminal:
/usr/local/etc/captura.txt
bien, este archivo es de configuración, en la primeras 4 lineas tiene la configuración necesaria para que el script continué con lo suyo sin problemas, pero suele pasar no muy seguido que el archivo se completa mal o no se logro guardar una parte de este y hay que realizar todo de nuevo.
1.- lo que necesitaría es poder abrir este archivo y editar la primer linea
2.- mas bien también se me ocurrió tener un archivo dentro del gambas para colocarlo allí, re nombrarlo con el nombre correspondiente y para terminar editar la primer linea
3-. o mejor crear el archivo y meterle dentro todo lo necesario tomando el primer dato de un textbox (ejemplo) y guardarlo
un solo problema es que internamente el archivo debe tener un texto X, el cual consta de 10.000 lineas y pueda que no sea txt (no esta compilado). Me gusto mas la ultima, alguien me guía
|
#1 Domingo, 19 Febrero 2012, 21:19 |
|
|
jsbsan
Analista Programador
Registrado: Septiembre 2009
Mensajes: 4175
Edad: 51 Ubicación: dos hermanas, sevilla
|
Re: Editar Archivo, Especial La Primer Linea?
Para la 3 opcion se me ocurre esto:
PUBLIC SUB Form_Open()
DIM cadena AS String
cadena = "hola esto va a la primera linea\n esto va a la 2 linea\n"
File.Save(User.home & "/hola.txt", cadena)
SHELL "cat " & User.home & "/hola.txt > definitivo.txt "
SHELL "cat " & User.home & "/fichero_largo.txt >> definitivo.txt"
END
Usa dos veces el comando de linux "cat" para crear el archivo "definitivo.txt", el contenido de del fichero "hola.txt" se lo pasa primero mediante ">" y luego le añade el contenido de "fichero_largo.txt" con ">>".
Nota:
Da igual que sea .txt (texto), o contenido binario, cat lo va a unir de todos modos.
|
#2 Domingo, 19 Febrero 2012, 21:33 |
|
|
Agamenon
Usuario
Registrado: Enero 2012
Mensajes: 36
Edad: 31 Ubicación:
|
Re: Editar Archivo, Especial La Primer Linea?
PUBLIC SUB Form_Open()
DIM cadena AS String
DIM lineaprimera AS String
cadena = lineaprimera & "\n esto va a la 2 linea\n y asi vamos a las 10.000\n"
File.Save("/usr/local/etc/captura.txt", cadena)
SHELL "cat " & "/usr/local/etc/" & "/captura.txt > pepino.txt "
SHELL "cat " & "/usr/local/etc/" & "/fichero_largo.txt >> definitivo.txt"
END
ahora faltaría re nombrarlo con un SHELL mas y listo. gracias
|
#3 Domingo, 19 Febrero 2012, 22:15 |
|
|
Agamenon
Usuario
Registrado: Enero 2012
Mensajes: 36
Edad: 31 Ubicación:
|
Re: Editar Archivo, Especial La Primer Linea?
Para la 3 opcion se me ocurre esto:
PUBLIC SUB Form_Open()
DIM cadena AS String
cadena = "hola esto va a la primera linea\n esto va a la 2 linea\n"
File.Save(User.home & "/hola.txt", cadena)
SHELL "cat " & User.home & "/hola.txt > definitivo.txt "
SHELL "cat " & User.home & "/fichero_largo.txt >> definitivo.txt"
END
Usa dos veces el comando de linux "cat" para crear el archivo "definitivo.txt", el contenido de del fichero "hola.txt" se lo pasa primero mediante ">" y luego le añade el contenido de "fichero_largo.txt" con ">>".
Nota:
Da igual que sea .txt (texto), o contenido binario, cat lo va a unir de todos modos.
el problema ahora esta en q si agrego las 10.000 lineas en:
cadena = "hola esto va a la primera linea\n esto va a la 2 linea\n"
gambas se cuelga, va si agrego apenas unas cuantas, se torna muy lento y es imposible de trabajar así.
|
#4 Lunes, 20 Febrero 2012, 19:30 |
|
|
jsbsan
Analista Programador
Registrado: Septiembre 2009
Mensajes: 4175
Edad: 51 Ubicación: dos hermanas, sevilla
|
Re: Editar Archivo, Especial La Primer Linea?
Citar: el problema ahora esta en q si agrego las 10.000 lineas en:
cadena = "hola esto va a la primera linea\n esto va a la 2 linea\n"
Agregaselas con el comando "cat", este va ha ser mas rápido que gambas en añadirle las 10.000 lineas
|
#5 Lunes, 20 Febrero 2012, 20:47 |
|
|
Agamenon
Usuario
Registrado: Enero 2012
Mensajes: 36
Edad: 31 Ubicación:
|
Re: Editar Archivo, Especial La Primer Linea?
ahora entendi jeje pero me funcionaba solamente en User.home, y con el fichero_largo.txt mas o menos corto.
File.Save("/usr/local/etc/hola.txt", cadena)
SHELL "cat " & "/usr/local/etc/" & "/hola.txt > program.config "
SHELL "cat " & "/usr/local/etc/" & "/fichero_largo.txt >> program.config"
no se crea el archivo program.config
igual lo solucione, deje que se creara en User.home y lo muevo con:
SHELL "cp " & program.config & " /usr/local/etc/"
luego al cerrar el formuario:
y borro los demás archivos y listo. me queda el archivo final en el directorio q quería.
última edición por Agamenon el Martes, 21 Febrero 2012, 23:08; editado 2 veces
|
#6 Martes, 21 Febrero 2012, 22:10 |
|
|
jguardon
Administrador
Registrado: Septiembre 2009
Mensajes: 2708
Edad: 57 Ubicación: Granada
|
Re: Editar Archivo, Especial La Primer Linea?
Realmente no entiendo muy bien lo que quieres hacer, pero veo cosas que no son muy lógicas. Por ejemplo intentar guardar archivos de configuración en rutas fuera de tu Home o usar funciones de shell para hacer cosas que gambas puede realizar perfectamente con sus propias instrucciones.
Generalmente los ficheros de configuración de aplicaciones se suelen guardar en una carpeta oculta bajo el directorio de usuario, o bien dentro de una carpeta bajo el directorio oculto .config. gambas también tiene herramientas para trabajar con ficheros de configuración (véase la clase Settings) y para copiar, borrar o concatenar strings (Copy, Kill, etc). Evidentemente, cualquier intento de modificar o crear archivos fuera del directorio de usuario resultarán en un error, ya que no tendrás permisos de escritura al no ser root.
Aquí tienes un resumen de las funciones para archivos y carpetas de gambas.
http://gambasdoc.org/help/cat/file?es
P.D. Por cierto, Agamenon: mi niña lleva dos noches sin dormir después de haber visto tu avatar!!!
Saludos
=================== Jesús Guardón
Por favor, usemos el corrector ortográfico antes de pulsar el botón "Enviar".
"uo ǝs ʇɐu pıɟıɔıן ɐdɹǝupǝɹ ɐ dɹoƃɹɐɯɐɹ, soןo ɥɐʎ bnǝ dɹodouǝɹsǝןo"
|
#7 Martes, 21 Febrero 2012, 23:22 |
|
|
Agamenon
Usuario
Registrado: Enero 2012
Mensajes: 36
Edad: 31 Ubicación:
|
Re: Editar Archivo, Especial La Primer Linea?
trankilo, ya se soluciono, no uso linux ( ubuntu) como usuario normal, siempre uso root, directamente borre el usuario normal e inicio sesión como root.
y este archivo de .conf, lo genera un script y lo deja justo en ese directorio. y no todos los programas dejan un archivo .conf en el home oculto, algunos lo dejan donde esta el mismo archivo "ejecutable".
gracias por la ayuda.
P.D. Por cierto, Agamenon: mi niña lleva dos noches sin dormir después de haber visto tu avatar!!!
Saludos
ejje es beavis, jaja ahora pongo una de mi generación. jeje lml
|
#8 Miercoles, 22 Febrero 2012, 01:19 |
|
|
|
Temas parecidos
Temas parecidos
|
Página 1 de 1
|
Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado Usuarios registrados conectados: Ninguno
|
No puede crear mensajes No puede responder temas No puede editar sus mensajes No puede borrar sus mensajes No puede votar en encuestas No puede adjuntar archivos Puede descargar archivos No puede publicar eventos en el calendario
|
|
|
|
|