Hospedagem online grátis para estações de trabalho

<Anterior | Conteúdo | Próxima>

único

Comparado com tipo, único programa é leve. único executa uma tarefa aparentemente trivial. Quando fornecido um arquivo classificado (ou entrada padrão), ele remove todas as linhas duplicadas e envia os resultados para a saída padrão. É frequentemente usado em conjunto com tipo para limpar a saída de duplicatas.


Dica: Embora único é uma ferramenta Unix tradicional frequentemente usada com tipo, a versão GNU de tipo suporta um -u opção, que remove duplicatas da saída classificada.


Vamos fazer um arquivo de texto para experimentar:



[me @ linuxbox ~] $ cat> foo.txt a

bcabc

[me @ linuxbox ~] $ cat> foo.txt a

bcabc


Lembre-se de digitar Ctrl-d para encerrar a entrada padrão. Agora, se corrermos único em nosso arquivo de texto:



[me @ linuxbox ~] $ uniq foo.txt

abcabc

[me @ linuxbox ~] $ uniq foo.txt

abcabc


os resultados não são diferentes de nosso arquivo original; as duplicatas não foram removidas. Para

uniq para fazer seu trabalho, a entrada deve ser classificada primeiro:


[me @ linuxbox ~] $ classificar foo.txt | único

abc

[me @ linuxbox ~] $ classificar foo.txt | único

abc


Isto é porque único remove apenas linhas duplicadas adjacentes umas às outras.

O uniq tem várias opções. Aqui estão os mais comuns:


Tabela 20-2: Opções comuns do uniq


Descrição da Opção

Descrição da Opção

-c Produz uma lista de linhas duplicadas precedidas pelo número de vezes que a linha ocorre.


-d Produz apenas linhas repetidas, em vez de linhas exclusivas.


-f n ignorar n campos principais em cada linha. Os campos são separados por espaços em branco, pois estão em tipo; no entanto, ao contrário tipo, único não tem opção para definir um separador de campo alternativo.


-i Ignora maiúsculas e minúsculas durante as comparações de linha.


-s n Pular (ignorar) o líder n personagens de cada linha.


-u Produz apenas linhas exclusivas. Linhas com duplicatas são ignoradas.



Aqui vemos único usado para relatar o número de duplicatas encontradas em nosso arquivo de texto, usando o -c opção:


[me @ linuxbox ~] $ classificar foo.txt | unico -c

2 um

B 2

2 c

[me @ linuxbox ~] $ classificar foo.txt | unico -c

2 um

B 2

2 c


Top OS Cloud Computing na OnWorks: