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

 

 

Opinião dos Leitores

Fernando Roxo
03 Fev 2015, 10:40
Esta listagem por tipo, o que na verdade não existe no mundo POSIX, parece ser na verdade uma listagem pelo último qualificador, ou seja pelo que vem depois do último ponto no nome:

$ ls -lhXG
...... <listagem longa cortada ........
drwxr-xr-x 3 roxo 4,0K Jun 27 2014 .yq2/
drwxr-xr-x 2 roxo 4,0K Dez 4 2011 .zapping/
-rw------- 1 roxo 53 Fev 7 2014 .zcalc_history
-rw-r--r-- 1 roxo 12M Out 4 2010 Divulga2010-1.1.0.zip
-rw-r--r-- 1 roxo 5,3M Jul 13 2012 Firmware PN-R3G.zip
-rw-r--r-- 1 roxo 3,8M Nov 2 2013 Reconcavo_Blocos.zip
-rw-r--r-- 1 roxo 2,3K Nov 10 2004 seawifs.zip
drwxrwxr-x 3 roxo 4,0K Fev 1 2011 .zs4/
-rw-r--r-- 1 roxo 1,3K Fev 7 2014 .zshrc


*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script