Guia do Linux/Iniciante+Intermediário/Comandos diversos/sort
Aparência
sort
[editar | editar código]Organiza as linhas de um arquivo texto ou da entrada padrão. A organização é feita por linhas e as linhas são divididas em campos que é a ordem que as palavras aparecem na linha separadas por um delimitador (normalmente um espaço).
sort [opções] [arquivo]
Onde:
- arquivo
- É o nome do arquivo que será organizado. Caso não for especificado, será usado o dispositivo de entrada padrão (normalmente o teclado ou um "|").
- opções
- -b
- Ignora linhas em branco.
- -d
- Somente usa letras, dígitos e espaços durante a organização.
- -f
- Ignora a diferença entre maiúsculas e minúsculas.
- -r
- Inverte o resultado da comparação.
- -n
- Caso estiver organizando um campo que contém números, os números serão organizados na ordem aritmética. Por exemplo, se você tiver um arquivo com os números
100
10
50
Usando a opção -n, o arquivo será organizado desta maneira:
10
50
100
Caso esta opção não for usada com o sort, ele organizará como uma listagem alfabética (que começam de a até z e do 0 até 9)
10
100
50
- -c
- Verifica se o arquivo já esta organizado. Caso não estiver, retorna a mensagem "disorder on arquivo".
- -o arquivo
- Grava a saída do comando
sortno arquivo. - -m arquivo1 arquivo2
- Combina o conteúdo de arquivo1 e arquivo2 gerando um único arquivo. Os dois arquivos precisam estar ordenados antes de se utilizar esta opção.
- -i
- Ignora os caracteres fora da faixa octal ASCII 040-0176 durante a organização.
- -t caracter
- Usa caracter como delimitador durante a organização de linhas. Por padrão é usado um espaço em branco como delimitador de caracteres.
- num1 -num2
- Especifica qual o campo dentro na linha que será usado na organização. O(s) campo(s) usado(s) para organização estará entre num1 e num2. O delimitador padrão utilizado é um espaço em branco (use a opção -t para especificar outro). A contagem é iniciada em "0". Caso não for especificada, a organização é feita no primeiro campo. Caso -num2 não seja especificado, a organização será feita usando a coluna num1 até o fim da linha.
- -k num1, num2
- Esta é uma alternativa ao método acima para especificar as chaves de organização. O uso é idêntico, mas o delimitador é iniciado em "1".
Abaixo, exemplos de uso do comando sort:
- sort
texto.txt- Organiza o arquivotexto.txtem ordem crescente. - sort
texto.txt-r - Organiza o conteúdo do arquivotexto.txtem ordem decrescente. - cat
texto.txt|sort - Faz a mesma coisa que o primeiro exemplo, só que neste caso a saída do comandocaté redirecionado a entrada padrão do comandosort. - sort -f
texto.txt- Ignora diferenças entre letras maiúsculas e minúsculas durante a organização. - sort 1 -3 texto.txt - Organiza o arquivo
texto.txtusando como referência a segunda até a quarta palavra (segundo ao quarto campo) que constam naquela linha. - sort -t : 2 -3 passwd - Organiza o arquivo
passwdusando como referência a terceira até a quarta palavra (terceiro ao quarto campo). Note que a opção -t especifica o caracter ":" como delimitador de campos ao invés do espaço. Neste caso, o que estiver após ":" será considerado o próximo campo.