Ordenando uma lista de IPs (IPv4) com o sort

Publicado por Sandro Marcell em 12/04/2011

[ Hits: 9.601 ]

Blog: http://sanmarcell.wordpress.com

 


Ordenando uma lista de IPs (IPv4) com o sort



Para quem tem um arquivo com uma lista de vários endereços IPs e deseja ordená-los, então aqui vai a sintaxe para o comando "sort":

sort -n -t '.' -k 1,1 -k 2,2 -k 3,3 -k 4,4 arquivo

Onde:
  • -n = a comparação deve ser realizada de acordo com o valor numérico da string
  • -t = especifica qual caractere será utilizado como separador de campos
  • -k = determina qual posição do campo será ordenada

Ex.:

cat lista_de_ips

192.168.1.7
10.102.4.56
172.16.1.69
10.102.5.24
192.168.0.11

sort -n -t '.' -k 1,1 -k 2,2 -k 3,3 -k 4,4 lista_de_ips
10.102.4.56
10.102.5.24
172.16.1.69
192.168.0.11
192.168.1.7


Mais detalhes? - Salve seu dia, consulte as man pages!

man sort

Falou!!!

Outras dicas deste autor

Utilizando abas no Vim

Copiar e colar no XTerm

Declarando constantes em shell scripts

Bash: Gráficos estatísticos de tráfego de rede

Substituir espaços em branco por underlines em nome de arquivos

Leitura recomendada

Gravação de tela com temporizador

Iniciando uma segunda interface gráfica no Linux

Como capturar uma janela específica usando o ImageMagick

SELinux - Resolvendo problemas na carga de módulos .so

Comandos básicos de rede 2

  

Comentários
[1] Comentário enviado por chimico em 13/04/2011 - 09:26h

Legal SMarcell, estou "brincando" com o sort já a um tempo e gostei da sua dica
Grande abraço

[2] Comentário enviado por brunotec em 14/04/2011 - 00:22h

Legal mesmo cara, em um ambiente corporativo isso pode quebrar o maior galho.

Um abraço.

[3] Comentário enviado por SMarcell em 24/02/2012 - 17:17h

Passando pra lembrar que isso:

sort -n -t '.' -k1 -k2 -k3 -k4

e o mesmo que isso:

sort -n -t '.' -k 1,1 -k 2,2 -k 3,3 -k 4,4

=)

Valeu!!!



Contribuir com comentário