Sim, tr
é uma ferramenta "simples" comparada a awk
e sed
, e os dois awk
e sed
podem imitar mais o seu comportamento básico, mas Nenhuma das sed
ou awk
tem " tr
embutido", no sentido de que existe uma única coisa nelas que exatamente faz todas as coisas que tr
faz.
tr
funciona em caracteres, não em sequências, e converte caracteres de um conjunto em caracteres em outro (como em tr 'A-Z' 'a-z'
para entrada em minúsculas). Seu nome é curto de "traduzir" ou "transliterado".
Ele possui alguns recursos interessantes, como a possibilidade de excluir vários caracteres consecutivos que são os mesmos, o que pode ser um pouco difícil de implementar com uma única expressão sed
.
Por exemplo,
tr -s '\n'
comprimirá todas as novas linhas consecutivas da entrada em novas linhas únicas.
Para caracterizar as três ferramentas grosseiramente:
-
tr
funciona em caracteres (altera ou apaga-os). -
sed
trabalha em linhas (modifica palavras ou outras partes de linhas, ou insere ou exclui linhas). -
awk
trabalham em registros com campos (por padrão, campos separados por espaço em branco em uma linha, mas isso pode ser alterado, definindoFS
eRS
).