Archivos para Noviembre, 2009

Reemplazar una cadena de caracteres en multiples archivos de un directorio

13 Noviembre 2009

bueno… saludos, tiempo sin escribir, hoy, estando sentado en mi escritorio, llega un tesiste y me dice que le revise un sistema, PHP+Mysql. Cual es mi sorpresa, que no tenia un archivo de conexion solamente, sino que realizaba la cadena de conexcion en todos y cada uno de los archivos del sistema….. cuando ve aquello…… WTF????… bueno.. modifique 2 a pata, pero mi gusano listero despierta y me dice…. “debe haber alguna solucion mas practica…. un script, en perl, en bash….”. bueno. asi que empece a indagar en interner y miren lo que encontre.. :D

find /directorio/*.#3 | xargs perl -pi -e ’s/#2/#1/g’

Este script lo ejecutas en el terminal, copiandolo tal y cual como esta aqui, y cambiando solo lo siguiente:

#3 = La extension de los archivos a los que quieres acceder
#2 = Cadena de caracteres a reemplazar
#1 = Cadena de Caracteres que deseas que reemplace la anterior

ejemplo

root@maquina:/home/dk4nno# find /var/sistema/*.php | xargs perl -pi -e ’s/ANGULO/TORRES/g’

Con este script, se modificaran todos los archivos con extensión PHP, que estan el el directorio /var/sistema, y se reemplazaran todas las cadenas de caracteres que tengan ANGULO por TORRES…

Espero les sirva de algo como a mi…

Saludos..