fbpx

Comandos Linux – Comando tr

Comando Linux tr

comando tr

Em sistemas operacionais do tipo Unix, o comando tr converte automaticamente (substitui ou mapeia) um conjunto de caracteres para outro.

Este documento cobre a versão GNU / Linux do tr .

Descrição

O utilitário tr copia a entrada padrão para a saída padrão com substituição ou exclusão dos caracteres selecionados.

Sintaxe

tr [-Ccsu] string1  string2

Nesta forma, os caracteres na seqüência de string1 são convertidos para os caracteres em string2 onde o primeiro caractere em string1 é traduzido para o primeiro caractere em string2 e assim por diante. Se a string1 for maior que a string2 , o último caractere encontrado na string2 será duplicado até que a string1 se esgote.

tr [-Ccu] -d string1

Nesse formulário, os caracteres na string1 são excluídos da entrada.

tr [-Ccu] -s string1

Nesse formulário, os caracteres na string1 são compactados conforme descrito para a opção -s (veja abaixo).

tr [-Ccu] -ds string1  string2

Na quarta forma, os caracteres na cadeia1 são excluídos da entrada e os caracteres na cadeia2 são compactados conforme descrito para a opção -s .

Opções

-CComplemente o conjunto de caracteres na cadeia1 , que é ” -C ab “, inclua todos os caracteres, exceto ‘ a ‘ e ‘ b ‘.
-cIgual a -C, mas complementa o conjunto de valores na string1 .
-dExclua caracteres na sequência1 da entrada.
-sAperte várias ocorrências dos caracteres listados no último operando ( string1 ou string2 ) na entrada em uma única instância do caractere. Isso ocorre após todas as exclusões e traduções serem concluídas.
-vocêGaranta que qualquer saída seja sem buffer.

Como os caracteres são especificados

Ao especificar os caracteres a serem traduzidos com tr , as convenções a seguir são usadas para representar conjuntos (ou “classes”) de caracteres.

Qualquer caractere não descrito por uma das convenções a seguir representa a si próprio.

octalUma barra invertida seguida por 1, 2 ou 3 dígitos octais representa um caractere com esse valor codificado. Para seguir uma sequência octal com um dígito como caractere, preencha a sequência octal à esquerda com zeros.
caractereUma barra invertida seguida por certos caracteres especiais é mapeada para valores especiais:

\umaO caractere “alerta”, que emite uma notificação ou alerta ao terminal.
\ bBackspace.
\ fAlimentação de formulário .
\ nNova linha .
\ rRetorno de carro .
\ tTab .
\ vGuia vertical.

Uma barra invertida seguida por outros mapas de caracteres para esse personagem.

– cIntervalo de caracteres . Para pontos finais de intervalo não octais representa o intervalo de caracteres entre os pontos finais de intervalo, inclusive e em ordem crescente, conforme definido pela sequência de intercalação. Se um ou os dois pontos de extremidade do intervalo forem sequências octais, ele representará o intervalo de valores codificados específicos entre os pontos de extremidade do intervalo, inclusive.
[: classe :]Representa todos os caracteres pertencentes à classe de caracteres definida. Os nomes das classes são:

alnumCaracteres alfanuméricos .
alfaCaracteres alfabéticos.
em brancoCaracteres de espaço em branco .
cntrlCaracteres de controle.
dígitoCaracteres numéricos.
gráficoCaracteres gráficos.
ideogramaCaracteres ideográficos.
mais baixoCaracteres alfabéticos minúsculos .
fonogramaCaracteres fonográficos.
impressãoCaracteres imprimíveis.
pontualCaracteres de pontuação.
runaCaracteres válidos.
espaçoCaracteres de espaço.
especialCaracteres especiais.
superiorCaracteres alfabéticos maiúsculos .
xdigitCaracteres hexadecimais .

Quando ” [: lower:] ” aparece na string1 e ” [: upper:] ” aparece na mesma posição relativa na string2 , representa os pares de caracteres do mapeamento do toupper na categoria LC_CTYPE da localidade atual. Quando ” [: cano:] ” aparece em seqüência1 e ” [: inferior:] ” aparece na mesma posição relativa em seqüência2 , que representa os caracteres pares do tolower mapeamento no LC_CTYPE categoria da localidade actual.

Com exceção da conversão de caso, os caracteres nas classes estão em ordem não especificada.

Para obter informações específicas sobre quais caracteres ASCII estão incluídos nessas classes, consulte o ctype e as páginas de manual relacionadas.

” [= equiv =] ” Representa todos os caracteres pertencentes à mesma classe de equivalência que o equiv , ordenados por seus valores codificados.

]Representa n ocorrências repetidas do caractere representado por # . Essa expressão é válida apenas quando ocorre na string2 . Se n for omitido ou for zero, ele será interpretado como grande o suficiente para estender a sequência string2 ao comprimento da string1 . Se n tiver um zero à esquerda, ele será interpretado como um valor octal; caso contrário, será interpretado como um valor decimal.

Meio Ambiente

As variáveis ​​de ambiente LANG , LC_ALL , LC_CTYPE e LC_COLLATE afetam a execução de tr .

Status de saída

tr retorna um status de saída 0 se operou com êxito e um valor maior que zero se ocorreu um erro.

Exemplos

tr -cs "[: alpha:]" "\ n" <arquivo1

Crie uma lista das palavras no arquivo1 , uma por linha, em que uma palavra é considerada uma sequência máxima de letras.

tr "[: inferior:]" "[: superior:]" <arquivo1

Traduza o conteúdo do arquivo1 para maiúsculas.

tr -cd "[: print:]" <arquivo1

Remova todos os caracteres não imprimíveis do arquivo1 .

tr "[= e =]" "e"

Remova todas as marcas “diacríticas” das versões acentuadas da letra e .

ed – Um simples editor de texto.
sed – Um utilitário para filtrar e transformar texto.
sh – O interpretador de comandos do Bourne shell.

22 de novembro de 2019

Sobre nós

A Linux Force Brasil é uma empresa que ama a arte de ensinar. Nossa missão é criar talentos para a área de tecnologia e atender com excelência nossos clientes.

CNPJ: 13.299.207/0001-50
SAC:         0800 721 7901

Comercial  Comercial: (11) 3796-5900

Suporte:    (11) 3796-5900

Copyright © Linux Force Security  - Desde 2011.