script de lectura y eliminacion de datos de un archivo especifico

Horst von Brand vonbrand en inf.utfsm.cl
Mie Mar 9 21:18:40 CLST 2005


cristian madrid <cristian en conexta.cl> dijo:
> Hola listeros tengo un pequeño problema con un script que estoy escrbiendo
> este script esta encargado de solictar datos luego concatenarlos en otro 
> archivo para asi poder almacenarlos uno tras otro en lineas 
> horizontales ,pero el problemas esta cuando deseo eliminar uno de estos 
> elemento ubicados en lineas horizontales por ejemplo
> 
> (estos datos estan almacenados en un archivo.old)
> 1.- dato_linea_1
> 2.- dato_linea_2
> 3.- dato_linea_3
> 4.- dato_linea_4
> 5.- dato_linea_5
> 6.- dato_linea_6
> 7.- dato_linea_7
> 
> supongamos que quiero eliminar los datos de la linea 3 y la linea 6 
> para poder saber si los contiene hago un
> grep  4 /datos/archivo.old
> grep  6 /datos/archivo.old

> tengo claro que con grep puedo leer y saber si el archivo.old contiene
> dato_linea_4 y dato_linea_6 y que sale facil edita manualmente el archvo
> con vi y eliminar pero como esto va dentro de un script nesecito que sea
> automatico , desde el script llamar algo que ubique esa linea que
> contiene la informacion y luego que la borre mi duda es que comando
> utilizo para poder ubicar el eliminar esas lineas de manera que mi
> archivo me quede

> 1.- dato_linea_1
> 2.- dato_linea_2
> 3.- dato_linea_3
> 5.- dato_linea_5
> 7.- dato_linea_5

Te sirve:

   grep -v ^4 archivo | grep -v ^6 > archivo.tmp; mv archivo.tmp archivo

(Claro que por mi, haria algo en Perl, es mucho mas flexible)
-- 
Dr. Horst H. von Brand                   User #22616 counter.li.org
Departamento de Informatica                     Fono: +56 32 654431
Universidad Tecnica Federico Santa Maria              +56 32 654239
Casilla 110-V, Valparaiso, Chile                Fax:  +56 32 797513


Más información sobre la lista de distribución Linux