28/12/18 Linux: localizando e substituindo uma string em vários arquivos

Dica rápida pra quem precisa procurar por determinado texto (em vários arquivos) e substituí-lo por outra expressão: use o comando find em conjunto com o sed.

find /home/joaopaulo/arquivos/ -type f -exec sed -i 's/186\.195\.84\.2/138\.94\.148\.143/g' {} \;

No exemplo acima estou procurando por um determinado Endereço IP e substituindo-o por outro. Repare que é necessário “escapar” o ponto pois o sed trabalha com expressões regulares.

Um adendo para aqueles que querem entender um pouco do comando find: chaves são consideradas “targets”, ou seja, serão substituídas pelo resultado do comando find e servirão, no exemplo, como parâmetros para o comando sed.

That’s it!

Compartilhe:



Participe: Envie seu Comentário!

O envio de comentário indica a aceitação dos Termos e Condições de uso do blog. Note que os comentários enviados são moderados antes da sua publicação e para evitar que estes sejam removidos e/ou desconsiderados, não use palavrões, ofensas e tampouco de expressões do miguxês!