Buscar cadenas de texto (y remplazar) en GNU/Linux
28 enero, 2009 2 comentarios
find "ruta" -type f | xargs grep "cadena a buscar"
Con find (y la opción usada) se buscan archivos en el directorio especificado (usar . para el directorio actual), el comando xargs combina cada elemento con el comando especificado y grep busca patrones en el archivo.
Tambień en varias ocasiones tendremos la necesidad de buscar una cadena de texto y suplirla por otra en n cantidad de archivos, para lograr esto de manera sencilla:
for arg in `find <ruta del directorio de los archivos> -type f`; do perl -pi -e 's/<texto a buscar>/<texto nuevo>/g' $arg; done;
un ejemplo:
for arg in `find /etc/apache2 -type f`; do perl -pi -e 's/90.0.0.20/192.168.1.60/g' $arg; done;
[Fuente: LinuxData y CómoCarajos.]