você está aqui: Home  → Arquivo de Mensagens

ls - listagem detalhada com ordenação por tipo de arquivo

Colaboração: Rubens Queiroz de Almeida

Data de Publicação: 03 de fevereiro de 2015

O comando ls possui uma grande quantidade de opções, tantas que até se diz que ele foge completamente à filosofia do Unix, em que cada programa desempenha apenas uma função. O comando ls é um mundo por si só. Já que é assim, não custa conhecer um pouco mais de seus recursos.

O comando "ls -lhXG" irá listar os arquivos omitindo a informação do grupo e ordená-los segundo o tipo de arquivo.

As diretivas usadas significam:

Diretiva Formato longo Significado
-l listagem longa
-h --human-readable formato legível por humanos
-X ordenar alfabeticamente
-G --no-group não exibir informações sobre propriedade de grupo

Para entender melhor, vejam o que acontece em um diretório em que criei arquivos do tipo txt, doc, pdf, odt e xls:

  $ ls -lhXG
  -rw-r--r-- 1 queiroz 0 Fev  1 16:45 a.doc
  -rw-r--r-- 1 queiroz 0 Fev  1 16:45 b.doc
  -rw-r--r-- 1 queiroz 0 Fev  1 16:45 c.doc
  -rw-r--r-- 1 queiroz 0 Fev  1 16:45 a.odt
  -rw-r--r-- 1 queiroz 0 Fev  1 16:45 b.odt
  -rw-r--r-- 1 queiroz 0 Fev  1 16:45 c.odt
  -rw-r--r-- 1 queiroz 0 Fev  1 16:45 a.pdf
  -rw-r--r-- 1 queiroz 0 Fev  1 16:45 b.pdf
  -rw-r--r-- 1 queiroz 0 Fev  1 16:45 c.pdf
  -rw-r--r-- 1 queiroz 0 Fev  1 16:45 a.txt
  -rw-r--r-- 1 queiroz 0 Fev  1 16:45 b.txt
  -rw-r--r-- 1 queiroz 0 Fev  1 16:45 c.txt
  -rw-r--r-- 1 queiroz 0 Fev  1 16:45 a.xls
  -rw-r--r-- 1 queiroz 0 Fev  1 16:45 b.xls
  -rw-r--r-- 1 queiroz 0 Fev  1 16:45 c.xls

Como podemos ver, os arquivos são ordenados alfabeticamente por tipo de arquivo e não são exibidas as informações de propriedade do grupo.

Se digitassemos apenas ls -l, teríamos:

  -rw-r--r-- 1 queiroz queiroz 0 Fev  1 16:45 a.doc
  -rw-r--r-- 1 queiroz queiroz 0 Fev  1 16:45 a.odt
  -rw-r--r-- 1 queiroz queiroz 0 Fev  1 16:45 a.pdf
  -rw-r--r-- 1 queiroz queiroz 0 Fev  1 16:45 a.txt
  -rw-r--r-- 1 queiroz queiroz 0 Fev  1 16:45 a.xls
  -rw-r--r-- 1 queiroz queiroz 0 Fev  1 16:45 b.doc
  -rw-r--r-- 1 queiroz queiroz 0 Fev  1 16:45 b.odt
  -rw-r--r-- 1 queiroz queiroz 0 Fev  1 16:45 b.pdf
  -rw-r--r-- 1 queiroz queiroz 0 Fev  1 16:45 b.txt
  -rw-r--r-- 1 queiroz queiroz 0 Fev  1 16:45 b.xls
  -rw-r--r-- 1 queiroz queiroz 0 Fev  1 16:45 c.doc
  -rw-r--r-- 1 queiroz queiroz 0 Fev  1 16:45 c.odt
  -rw-r--r-- 1 queiroz queiroz 0 Fev  1 16:45 c.pdf
  -rw-r--r-- 1 queiroz queiroz 0 Fev  1 16:45 c.txt
  -rw-r--r-- 1 queiroz queiroz 0 Fev  1 16:45 c.xls

Para facilitar, criamos um alias editando o arquivo $HOME/.bashrc e inserimos a seguinte linha:

  alias lsh='ls -lhXG'

Para obter então a listagem desejada, basta digitar "lsh".

Fonte: Collection of Useful Bash Functions and Aliases



Veja a relação completa dos artigos de Rubens Queiroz de Almeida