Aqui está uma solução rápida, use du + sort. Tente o seguinte:
du -smc * | sort -n
Isso ignorará os arquivos ocultos, mas essa é outra solução fácil:
du -smc .[^.] .??* * | sort -n
Isso pode causar avisos sobre se um ou mais dos padrões acima não correspondem a um arquivo. O primeiro padrão .[^.]
corresponde a todos os dois nomes de arquivos de caracteres começando com. exceto para .., o segundo padrão, .??*
corresponde aos três nomes de arquivos com três letras ou mais começando com. e * corresponde a todos os arquivos que não estão começando. Para uma listagem mais sofisticada, como encontrar todos os arquivos maiores que X em todo um sistema de arquivos ou manter uma lista de crescimento do sistema de arquivos, tenho um script shell DIY que escrevi e que pode ser compartilhado se você estiver interessado.
sort -nr
se você quiser os maiores valores por cima.Para listar os arquivos em qualquer lugar abaixo
/tmp
, classificados por tamanho:Para listar os arquivos e as árvores de diretório imediatamente abaixo
/tmp
, classificados por tamanho:Para listar todos os arquivos e árvores de diretórios em qualquer lugar abaixo
/tmp
, classificados por tamanho:(Um exemplo para ilustrar a diferença entre os três comandos: se houver um arquivo
/tmp/dir/file
, o primeiro comando lista/tmp/dir/file
, a segunda lista/tmp/dir
e a terceira lista os dois.)Todos os comandos acima mostram tamanhos em kilobytes. Embora o GNU du possa produzir tamanhos “legíveis por humanos” (com multiplicadores k, M, G, etc.), classificá-los é outra questão. Coreutils GNU recentes o suficiente (≥7.4) podem fazer isso: basta substituir
du -k
pordu -h
esort -k1n -k2
comsort -k1h -k2
. Caso contrário, eis um script bruto do awk para converter em tamanhos com sufixo (arredondamento para baixo); basta canalizar asort
saída acima para ele.fonte
du
chamada.Estou usando o seguinte alias para isso:
alias ds='du -x --all --max-depth=1 . | sort -n'
Ele imprime tamanhos de todos os arquivos e subdiretórios do 1º nível do diretório atual.
fonte
Com a versão atual do gnu sort (e padrão de arquivo emprestado @ penguin359)
Com uma versão mais antiga do tipo
EDIT: adicionado parâmetro -S
du
para não incluir subdiretórios.fonte
--apparent-size
aos parâmetros du.UPDATE: Eu raspei o script anterior. Aqui está uma nova versão, usando
du
eawk
(a anterior usadatree
esed
)Esta é a saída de:
dusort ~/test 1
Aqui está o script
fonte
tree
faz isso. se você quiser o disco-espaço usado, em seguida,du
faz isso ... (tree
não somam um diretório)man du
que ele também pode relatar o "tamanho aparente do arquivo" ....The apparent size of a file is the number of bytes reported by
wc -c 'em arquivos regulares ou, geralmente,ls -l --block-size=1' or
stat --format =% s '. Por exemplo, um arquivo contendo a palavrazoo' with no newline would, of course, have an apparent size of 3.
mostra os arquivos maiores primeiro, para que você possa qusá-lo assim que tiver visto o suficiente.
fonte