Utilizando o Sed para Alterar Trechos em Múltiplos Arquivos
Written on
Você já se deparou com a necessidade de fazer alterações de uma parte de código ou alguma tag em vários arquivos de uma vez só? Se sim, o utilitário sed pode ser seu aliado nessa tarefa. Neste tutorial, vou te guiar pelo processo que utilizei ao usar o sed para substituir o trecho :tag: por :tags: em diversos arquivos .rst dentro de um diretório.
Passo 1: Abrindo o Terminal
Abra o terminal e navegue até o diretório onde estão localizados os arquivos .rst que você deseja alterar.
Passo 2: Utilizando o Sed para Substituição
Execute o seguinte comando para usar o sed e substituir :tag: por :tags: em todos os arquivos .rst no diretório:
sed -i 's/:tag:/:tags:/g' *.rst
- -i: Esse parâmetro permite a edição in-place dos arquivos, ou seja, as alterações serão feitas diretamente nos arquivos.
- 's/:tag:/:tags:/g': Isso indica ao sed para substituir todas as ocorrências de :tag: por :tags:.
- *.rst: Isso especifica os arquivos .rst nos quais você deseja realizar a substituição.
Passo 3: Verificando as Alterações
Após executar o comando, abra um dos arquivos .rst alterados para verificar se a substituição foi realizada corretamente. Você deverá ver todas as instâncias de :tag: substituídas por :tags:.
Dica Extra: Cuidados com o Backup
O uso do -i no sed faz alterações diretamente nos arquivos, sem criar backups. Se você quiser criar backups antes das alterações, pode utilizar a seguinte variação do comando:
sed -i.bak 's/:tag:/:tags:/g' *.rst
Isso criará cópias de backup dos arquivos originais com a extensão .bak.
Agora você sabe como usar o sed para substituir trechos específicos em múltiplos arquivos .rst de uma só vez. Esse é apenas um dos muitos usos úteis desse poderoso utilitário de linha de comando. Experimente e explore suas capacidades para simplificar ainda mais suas tarefas de edição!