O sed é uma poderosa ferramenta de edição de texto em linha de comando que pode ser usada para manipular e transformar arquivos de texto. Neste guia completo, vamos explorar as principais funcionalidades do sed e como utilizá-lo para realizar tarefas comuns de edição de texto.
O que é o sed?
O sed, abreviação de stream editor, é uma ferramenta de linha de comando disponível em sistemas Unix e Linux. Ele permite que você faça substituições, exclusões, inserções e outras operações de edição em arquivos de texto, linha por linha.
Instalando o sed
Antes de começar a usar o sed, você precisa garantir que ele esteja instalado no seu sistema. Na maioria das distribuições Linux, o sed já vem pré-instalado. Caso contrário, você pode instalá-lo usando o gerenciador de pacotes da sua distribuição. Por exemplo, no Ubuntu, você pode usar o seguinte comando:
sudo apt-get install sed
Principais comandos do sed
O sed possui uma ampla variedade de comandos que podem ser combinados para realizar tarefas complexas de edição de texto. Aqui estão alguns dos comandos mais úteis:
- s/old/new/: substitui a primeira ocorrência de ‘old’ por ‘new’ em cada linha;
- s/old/new/g: substitui todas as ocorrências de ‘old’ por ‘new’ em cada linha;
- /pattern/d: exclui todas as linhas que correspondem ao padrão especificado;
- /pattern/p: imprime todas as linhas que correspondem ao padrão especificado;
- /pattern/!d: exclui todas as linhas que não correspondem ao padrão especificado;
- /pattern/i extbackslash: insere uma nova linha antes de cada linha que corresponde ao padrão especificado;
- /pattern/a extbackslash: insere uma nova linha após cada linha que corresponde ao padrão especificado;
Exemplos de uso
Vamos ver alguns exemplos de como usar o sed para realizar tarefas comuns de edição de texto.
Substituir texto:
sed 's/old/new/' arquivo.txt
Este comando substituirá a primeira ocorrência de ‘old’ por ‘new’ em cada linha do arquivo.txt.
Excluir linhas:
sed '/pattern/d' arquivo.txt
Este comando excluirá todas as linhas que correspondem ao padrão especificado do arquivo.txt.
Inserir texto:
sed '/pattern/i extbackslash
Nova linha a ser inserida' arquivo.txt
Este comando inserirá a linha ‘Nova linha a ser inserida’ antes de cada linha que corresponde ao padrão especificado no arquivo.txt.
Conclusão
O sed é uma ferramenta poderosa para manipulação de texto em sistemas Unix e Linux. Com os comandos corretos, você pode realizar uma ampla variedade de tarefas de edição de texto de forma rápida e eficiente. Esperamos que este guia tenha lhe dado uma introdução útil ao sed e suas funcionalidades.