Como substituir uma string em vários arquivos

Dica rápida de como fazer a substituição de uma mesma string dentro de vários arquivos de um mesmo diretório fazendo uso do comando sed. É realmente muito simples, mas a dica é sempre bem vinda.

Uma vez dentro do diretório onde encontram-se os arquivos utilize a seguinte sintaxe:

sed -i 's,texto a ser substituido,texto novo,g' *

Caso eu queira subsituir por exemplo o texto: http://www.ffelix.eti.br/blog por http://blog.ffelix.eti.br, o código ficará assim:

sed -i 's,http://www.ffelix.eti.br/blog,http://blog.ffelix.eti.br,g'

Ps.: A vírgula no comando serve como separador, outros símbolos podem ser utilizados. O mais comum é a barra “/”, porém neste exemplo foi utilizada a vírgula justamente porque os textos (original e substituto) possiuiam esta mesma barra e desta forma o comando não funcionaria.

comments powered by Disqus