Páginas

Monday, June 28, 2010

Utilização do disco usando du e awk

Hoje escrevi algumas linhas no shell para me ajudar a identificar onde estavam as coisas mais pesadas na hierarquia...

Fica aqui como possível referência futura:

  • Listar/calcular tamanho para 2 níveis de diretórios 
du -k -d2 . | awk '{printf "%-40s %4.1f MB\n", $2, $1/1024}' | sort

  • Ver os 15 maiores diretórios
du -k * | sort -nr | head -n 15

  • Ver apenas diretórios com mais de 1 MB
du -k -d3 main | awk '{ if ($1 >= 1024) printf "%-40s %4.1f MB\n", $2, $1/1024}' | sort 


Explicações básicas:
du: mostra o espaço em disco ocupado por um arquivo/diretório.
-k mostrar valores em KB
-d N processar árvore de diretório N níveis

awk: permite fazer a magia negra. Para cada linha do input, imprimimos o nome do diretório (em $2) com uma largura de 40 caractéres (completados com espaços em branco) e o tamanho (em $1) dividido por 1024 (conversão para MB).

No comments: