O dircomando de listagem de diretórios do Windows possui uma linha no final, mostrando a quantidade total de espaço ocupado pelos arquivos listados. Por exemplo, dir *.exemostra todos os .exearquivos no diretório atual, seus tamanhos e a soma total de seus tamanhos. Adoraria ter uma funcionalidade semelhante ao meu diralias no bash, mas não sei exatamente como fazê-lo.
Atualmente, eu tenho alias dir='ls -FaGl'no meu .bash_profile, mostrando
drwxr-x---+ 24 mattdmo 4096 Mar 14 16:35 ./
drwxr-x--x. 256 root 12288 Apr 8 21:29 ../
-rw------- 1 mattdmo 13795 Apr 4 17:52 .bash_history
-rw-r--r-- 1 mattdmo 18 May 10 2012 .bash_logout
-rw-r--r-- 1 mattdmo 395 Dec 9 17:33 .bash_profile
-rw-r--r-- 1 mattdmo 176 May 10 2012 .bash_profile~
-rw-r--r-- 1 mattdmo 411 Dec 9 17:33 .bashrc
-rw-r--r-- 1 mattdmo 124 May 10 2012 .bashrc~
drwx------ 2 mattdmo 4096 Mar 24 20:03 bin/
drwxrwxr-x 2 mattdmo 4096 Mar 11 16:29 download/
por exemplo. Tomando as respostas desta pergunta :
dir | awk '{ total += $4 }; END { print total }'
o que me dá o total, mas não imprime a lista de diretórios em si. Existe uma maneira de alterar isso em um script de uma linha ou shell, para que eu possa passar os lsargumentos que quiser dire obter uma lista completa mais a soma total? Por exemplo, eu gostaria de executar dir -R *.jpg *.tifpara obter a listagem e o tamanho total desses tipos de arquivo em todos os subdiretórios. Idealmente, seria ótimo se eu pudesse obter o tamanho de cada subdiretório, mas isso não é essencial.
ls -lhestá imprimindo, mas nem sempre está relacionado ao que os awkscripts abaixo calculam ou ao que eu adiciono manualmente. Às vezes, é próximo ao número de KB de arquivos no diretório, mas parece não ter efeito nos tamanhos alocados dos subdiretórios. Eu ficaria muito grato se você poderia me apontar para uma explicação sobre o que exatamente esse número é ...
ls -lhnão mostra o total de tamanho de um dir calcular o seu conteúdo
ls -lhajuda você? Imprime a soma total no topo. Você também pode executardu -sh *.exepara obter informações sobre o uso do espaço em disco em formato legível por humanos.