fbpx

Comandos Linux – Comando uniq

Comando Linux uniq

comando uniq

Em sistemas operacionais do tipo Unix, o comando uniq reporta ou filtra linhas repetidas em um arquivo.

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

Descrição

O uniq filtra as linhas adjacentes correspondentes do arquivo de entrada INPUT , gravando os dados filtrados no arquivo de saída OUTPUT .

Se INPUT não for especificado, o uniq lê da entrada padrão .

Se OUTPUT não for especificado, o uniq gravará na saída padrão.

Se nenhuma opção for especificada, as linhas correspondentes serão mescladas à primeira ocorrência.

Sintaxe

uniq [ OPÇÃO ] ... [ ENTRADA [ SAÍDA ]]

Opções

-c , –countPrefixe as linhas com um número que representa quantas vezes elas ocorreram.
-d , –repetidoImprima apenas linhas duplicadas.
-D , –todos repetidos [ delimit-method ]Imprima todas as linhas duplicadas. delimit-method pode ser um dos seguintes:

NenhumNão delimite linhas duplicadas. Esse é o padrão.
precederInsira uma linha em branco antes de cada conjunto de linhas duplicadas.
separadoInsira uma linha em branco entre cada conjunto de linhas duplicadas.

A opção -D é a mesma que especificar –all-repeat = none .

-f N , –skip-fields = NEvite comparar os primeiros N campos de uma linha antes de determinar a exclusividade. Um campo é um grupo de caracteres , delimitado por espaços em branco .

Essa opção é útil, por exemplo, se as linhas do seu documento estiverem numeradas e você quiser comparar tudo na linha, exceto o número da linha. Se a opção -f 1 for especificada, as linhas adjacentes

1 Esta é uma linha. 
2 Esta é uma linha.

seria considerado idêntico. Se nenhuma opção -f fosse especificada, elas seriam consideradas únicas.

-i , –ignore-caseNormalmente, as comparações diferenciam maiúsculas de minúsculas . Esta opção realiza comparações que não diferenciam maiúsculas de minúsculas.
-s N , – skip-chars = NEvite comparar os primeiros N caracteres de cada linha ao determinar a exclusividade. É como a opção -f , mas ignora caracteres individuais em vez de campos.
-u , –uniqueImprima apenas linhas exclusivas.
-z , –zero-terminadoLinhas finais com 0 byte ( NULL ), em vez de uma nova linha .
-w , –check-chars = NCompare no máximo N caracteres em linhas.
–SocorroExiba uma mensagem de ajuda e saia.
–versãoInformações de versão de saída e saída.

Notas

O uniq não detecta linhas repetidas, a menos que elas sejam adjacentes. Você pode classificar a entrada primeiro ou usar sort -u em vez de uniq .

Exemplos

Digamos que temos um arquivo de texto de oito linhas, myfile.txt , que contém o seguinte texto:

Esta é uma linha.
Esta é uma linha.
Esta é uma linha.
 
Isso também é uma linha.
Isso também é uma linha.
 
Isso também é uma linha.

… Aqui estão várias maneiras de executar o uniq neste arquivo e a saída que ele cria:

uniq myfile.txt
Esta é uma linha.
 
Isso também é uma linha.
 
Isso também é uma linha.
uniq -c myfile.txt
3 Esta é uma linha.
1  
2 Esta também é uma linha.
1  
1 Isso também é uma linha.
uniq -d myfile.txt
Esta é uma linha. 
Isso também é uma linha.
uniq -u myfile.txt
Isso também é uma linha.

comm – Compare dois arquivos classificados linha por linha.
pacote – Compactar arquivos usando um algoritmo de Huffman.
pcat – imprime o conteúdo não compactado de um arquivo compactado.
sort – Ordena as linhas em um arquivo de texto.
descompactar – Extrai arquivos de arquivos compactados.

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.