miércoles, 19 de agosto de 2009

Rapido: reemplazo de texto en una serie de archivos

A menudo se tiene que reemplazar una frase o una palabra en una cantidad de archivos que hace imposible hacerlo a mano. Eso si sabes que archivos tienen lo que necesitas.

Con el comando que pondre aqui puedes sustituir una palabra o frase en un archivo SIN abrirlo para edicion... o en todos los archivos que se encuentren de acuerdo a tu criterio de busqueda.

Vamos a plantearlo como problema.

Problema: Quiero reemplazar el año 2008 por 2009 en todos los archivos .html de un site.

Puedes usar el siguiente comando:
find . -name "*.html" | xargs perl -pi -e 's/2008/2009/g'

Aqui estamos combinando busqueda de archivos con find + el comando xargs + una expresion en perl ejecutada directamente desde nuestro shell sin crear un script.

Usando find y xargs se pueden hacer todo tipo de cosas que iremos viendo eventualmente.

No hay comentarios.:

Publicar un comentario