Buscar y reemplazar es una de las funciones más usadas en los editores de texto, es algo extremadamente útil cuando por ejemplo queremos modificar el nombre de una variable a lo largo de un programa por el motivo que sea etc… pero si el programa está dividido en varios ficheros o quieres modificar un dato que tienen todos los ficheros de un directorio la cosa se complica ya que la mayoria de editores (que yo conozca) no nos dan la posibilidad de buscar y reemplazar en varios ficheros.
En Debian, Ubuntu … podemos echar mano del terminal y con un comando que nos permite buscar y reemplazar una linea de texto de todos los ficheros que pongamos en un directorio y subdirectorios.
- Para reemplazar un texto o string cada vez que aparezca en los archivos:
- Para reemplazar la primera vez que aparezca el texto:
- Para reemplazar todos los archivos dentro de un directorio:
find /path/directorio "*.txt" | xargs perl -pi -e 's/texto/reemplazo/g'
find /path/directorio "*.txt" | xargs perl -pi -e 's/texto/reemplazo/'
for arg in `ls -C1`; do perl -pi -e 's/texto/reemplazo/g'; done;
En Windows también existe la posibilidad gracias a algunos progamas como Multiple Find and Replace
Vía: Guatewireless