De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.
Colaboração: Rubens Queiroz de Almeida
Data de Publicação: 25 de abril de 2024
Neste tutorial abordamos algumas das opções menos conhecidas, mas muito úteis, do comando sort
.
Abordaremos, com exemplos, as opções descritas na tabela abaixo:
Opção | Significado |
---|---|
-u (unique) |
A opção -u ou --unique remove linhas duplicadas da saída, mantendo apenas uma ocorrência de cada linha única. |
-r (reverse) |
A opção -r ou --reverse inverte a ordem de classificação, exibindo as linhas em ordem decrescente. |
-k (key) |
A opção -k permite especificar a coluna ou campo pelo qual a classificação deve ser realizada. É útil quando se trabalha com arquivos de texto estruturados, como arquivos CSV. |
-R (random sort) |
A opção -R ou --random-sort classifica as linhas em ordem aleatória. Isso pode ser útil quando você deseja embaralhar as linhas de um arquivo. |
$ cat frutas.txt maçã banana laranja maçã uva banana $ sort -u frutas.txt banana laranja maçã uva
$ cat numeros.txt 10 5 8 2 7 $ sort -r numeros.txt 10 8 7 5 2
$ cat alunos.txt João,25,Matemática Maria,22,Física Pedro,28,Química Ana,24,Biologia $ sort -k 2 -n alunos.txt Maria,22,Física Ana,24,Biologia João,25,Matemática Pedro,28,Química
Nesse exemplo, a opção -k 2
indica que a classificação deve ser
feita com base na segunda coluna (idade), e a opção -n
especifica uma
classificação numérica.
$ cat alunos.csv João;25;Matemática Maria;22;Física Pedro;28;Química Ana;24;Biologia $ sort -t ';' -k 2 -n alunos.csv Maria;22;Física Ana;24;Biologia João;25;Matemática Pedro;28;Química
Nesse exemplo, a opção -t ';'
define o ponto e vírgula como delimitador de campo.
$ cat numeros.txt 1 2 3 4 5 $ sort -R numeros.txt 4 2 5 1 3
Essas são apenas algumas das opções úteis do comando sort
. O sort
possui muitas outras opções para lidar com diferentes tipos de dados e
realizar classificações personalizadas. Consulte a página de manual do
sort
(man sort) para obter mais informações sobre todas as opções
disponíveis.