Eliminar linea de un archivo similar a comando GREP

Jesus Aneiros Sosa aneiros en finf.ucf.edu.cu
Lun Ago 29 07:36:10 CLT 2005


On Sun, 28 Aug 2005, Horst von Brand wrote:

> Jesus Aneiros Sosa <aneiros en finf.ucf.edu.cu> wrote:
> > On Sat, 27 Aug 2005, Cristian Gutierrez wrote:
> > > Hoy en la tarde, Roberto Bonvallet dijo:
> > > > Astor Giacomo escribio:
> > > >> On Saturday 27 August 2005 01:43, Julio Retamal Rojas wrote:
> 
> > > >> > Tengo un archivo que contiene 640.000 lineas y hay lineas que
> > > >> > tienen un texto en especial y necesito hacer un proceso que busque
> > > >> > en todo el archivo y elimine esa linea.
> 
> > > >> Como desagravio al pobre (y aparentemente olvidado) sed(1), me permito
> > > >> sugerir
> > > >> 
> > > >>    sed '/is taked/d' xaa
> 
> > > > Para no quedarme atras:
> > > >
> > > >     vim +g,is\ taked,d +wq xaa
> 
> > > Y ya que el publico lo pide:
> 
> > >     emacs -batch -q xaa  -eval '(progn (flush-lines "is taked")(save-buffer)(kill-emacs))'
> 
> > Con todo respeto: la opcion con vim muy fea
> 
> Ni tanto... no sabia que vim acepta comandos por argumentos, yo habria
> hecho algo del corte:

Eso es porque ud es de la religion de emacs.

> 
>   (echo g/is taked/d; echo w; echo q) | ed xaa
> 
> o:
> 
>   (echo g/is taked/d; echo x) | ex xaa
> 

Con echo -e se ahorra los echo y el subshell.

> Si eres de la religion ed(1) o sucesores (ex(1), vi(1), etc) es logico;

No conocia esa religion, conocia el culto a vi.

> incluso mas, es simplemente el comando obvio para la tarea entre manos,
> solo que dado de forma ligeramente inusual.

Obvio dice ud!!?? "Ud sabe" que eso no es filosofia UNIX: cada herramienta 
para una funcion bien determinada y cada herramienta pequena y lo mas 
simple posible.

> 
> >                                             y la de emacs horrible!
> 
> Tambien es bastante logico, si eres seguidor de la religion emacs(1).

Teniendo en cuenta toda la "featuritis" de emacs no me parece muy logico.

> 
> >                                                                     Nada 
> > que ver con UNIX.
> 
> Porque no?

Explique arriba.

> 
> >                   Seria interesante saber el tiempo que les tomo a cada 
> > uno dar con ellas para comparar con las mas "intuitivas" de grep(1) o 
> > sed(1).
> 
> Diria que mas o menos el mismo tiempo.

Tengo la impresion que no es lo que dijo uno de los autores. Me dio la
impresion que estaban pensando en terminos de una especie de YAPH, Perl
ofuscado o algo asi. Al menos mi respuesta con el comando w de sed(1) iba
por ese camino.  Creo que ellos estaban tratando de "exprimir" al maximo a
emacs o vim pero ya tenian la solucion con grep, sed o awk en mente.

--
Jesus Aneiros Sosa
GNU/Linux User #190716
perl -e '$_=pack(c5,0105,0107,0123,0132,(1<<3)+2);y[A-Z][N-ZA-M];print;'



Participe en el V Congreso Internacional de Educacion Superior
"Universidad 2006". La Habana , Cuba, del 13 al 17 de febrero del 2006
http://www.universidad2006.cu/



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