viernes 5 de marzo de 2010

Buscar Texto dentro de un archivo [Linux]

Para ello usamos el comando grep:

Por ej, tenemos:

solarin@Gentoo ~/Desktop/docs $ ls -l
total 8
-rw-r--r-- 1 solarin solarin 38 Mar 5 13:25 test.txt
-rw-r--r-- 1 solarin solarin 23 Mar 5 13:27 test2.txt


Con el siguiente respectivo contenido:

solarin@Gentoo ~/Desktop/docs $ cat test.txt
hola esta es una prueba,
esta es otra linea de esta prueba.
otra linea
otra linea

solarin@Gentoo ~/Desktop/codes/docs $ cat test2.txt
esta es una prueba mas



Ahora para buscar la cadena "esta" dentro de uno de estos archivos, sería de la siguiente manera:

solarin@Gentoo ~/Desktop/codes/docs $ grep "esta" test.txt
hola esta es una prueba,
esta es otra linea de esta prueba.


Para buscar una cadena en varios archivos, por ejemplo todos los con extension ".txt":

solarin@Gentoo ~/Desktop/codes/docs $ grep "esta" ./*.txt
./test.txt:hola esta es una prueba,
./test.txt:esta es otra linea de esta prueba.
./test2.txt:esta es una prueba mas


Para buscar en todos los archivos dentro de un directorio de manera recursiva (esto se logra utilizando el parametro "-r":

solarin@Gentoo ~/Desktop/codes/docs $ grep "esta" ./*.txt
./test.txt:hola esta es una prueba,
./test.txt:esta es otra linea de esta prueba.
./test2.txt:esta es una prueba mas


Para mas informacion: Man Pages

0 comentarios:

Publicar un comentario en la entrada