Reemplazar texto en múltiples ficheros con Perl

Gracias a Perl, es muy sencillo realizar cambios en uno o varios ficheros sin necesidad de crear ningún script. Por ejemplo si necesitaramos cambiar la configuración DNS de dominios ubicados en la carpeta /var/named/ podemos hacerlo con un este comando:

perl -i -pe "s/0.0.0.0/1.1.1.1/g" /var/named/dominio.com.db

Si quisieramos hacerlo para todos los dominios:

perl -i -pe "s/0.0.0.0/1.1.1.1/g" /var/named/*.db

Optimizando un poco el comando, podemos además realizar un backup del fichero que estamos modificando por seguridad incluyendo lo siguiente (este ejemplo además de reemplazar la IP crearía un fichero de backup /var/named/dominio.com.db.bkp) :

perl -i.bak -pe "s/0.0.0.0/1.1.1.1/g" /var/named/dominio.com.db

Esto por supuesto también puede hacerse con otras herramientas, por ejemplo con sed o replace.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *