du -k | sort -n | tail
Mas isso pertence ao SU, não ao StackOverflow
Eu tenho um diretório do qual eu quero excluir algumas coisas.
Por isso, gostaria de ver os arquivos mais pesados.
du -ch vai trazer muitas informações, então eu estava pensando em algo como
du -ch | sort by size| head
A classificação por parte do tamanho está me incomodando
Alguma opinião?
Obrigado antecipadamente
Meu primeiro pensamento é que você não pode usar -h
em um du
que você vai classificar. Experimente:
du | sort -rn | head
se você quiser ver arquivos "mais pesados", para os quais eu suponho que sejam arquivos de tamanho maior ...
du -ch /home |sort -nr|head
Eu tenho um alias (csh) "large" que mostra os 10 maiores arquivos no meu diretório atual:
alias large "ls -l \!* |sort -k5 -rn |head -10"
Dependendo da versão do du, gosto do seguinte:
du -ckhs *
Ele puxa apenas os tamanhos dos itens (um tipo de tipo de nível superior) no diretório atual (tamanhos de arquivos e tamanhos de diretórios filhos (sem listar tudo em cada um)).
Como o caos disse, você não pode ordenar que as coisas apareçam corretamente com -h, mas pelo menos dá uma boa visão geral rápida dos tamanhos sem entrar em muitos detalhes.
Essa função bastante longa exibirá uma lista classificada com tamanhos legíveis:
dus () { du -bh ${1:+$1/}* |
awk 'BEGIN {KMG="KMG"}
{printf "%s %08.2f %s\t%s\n",
index(KMG,substr($1,length($1))),
substr($1,0,length($1)-1),
substr($1,length($1)),$0}' |
sort -r |
cut -f 2-
}
que você pode passar por head
:
dus | head
Aceita um diretório como argumento:
dus /usr/local
Normalmente eu usarei du -s * | sort -nr
para isso, e vou até os diretórios com tamanhos maiores. A opção -s
faz com que seja exibido o total de cada item em vez de recursing.
por exemplo:
bcl@fozzy:~$ du -s * | sort -nr
171900 wiki
169932 bb.mail.tar.bz2
112772 tmp
44416 d.mail.tar.bz2
4148 src
2012 public_html
880 Mail
144 sha-search
72 logs
20 tt.txt
16 Maildir
16 brianlane_html
12 Temporary Items
12 Network Trash Folder
8 calendar_html
4 wiki_html
4 procmail.bcl
4 id_rsa.pub
4 foo.sh
4 fetchmail.bcl
4 bb.procmailrc
0 time.out
Pessoalmente acho que o kdirstat é muito útil para descobrir onde meu espaço em disco passou. Ele classifica tudo por tamanho e mostra um "mapa da árvore" um tanto útil que permite que você avalie de maneira aproximada onde o espaço está sendo usado.
Experimente NCDU .
Use ls -S
para classificar por tamanho de arquivo.