Questão Listar os tamanhos da pasta atual com o terminal?


Eu quero uma lista das pastas do diretório atual ou que eu especifico com seu tamanho.

Eu tentei com du mas eu só tenho o tamanho dos diretórios que eu especificar (du. .F1), e ls não mostra o tamanho das pastas.

Como faço isso sem nenhum script?


99


origem


não soar como um idiota, mas 'man du';) - Jakub
Obrigado ;-) mas eu já tentei e não consegui encontrar nada. E tente usar o googling du! - kevin


Respostas:


Se você quiser mostrar todos os diretórios no diretório atual:

$ du -sh */
788K    foo/
500K    bar/
931K    baz/

Para mostrá-los a partir de outro diretório:

$ du -sh /path/to/dir/*/
48K     /path/to/dir/dir1/
4.0K    /path/to/dir/dir2/
6.7M    /path/to/dir/dir3/
20K     /path/to/dir/dir4/
8.0K    /path/to/dir/dir5/
44K     /path/to/dir/dir6/

166



Obrigado todas as grandes respostas, mas esta é a mais simples. Eu esqueci o final / nos meus testes. - kevin
Onde -s significa resumir, exibir o total e -h significa legível - wranvaud


Em um Mac, a opção --max-depth é suplantada por -d [profundidade]. Portanto, para ver uma listagem legível do seu disco raiz mais dois níveis de profundidade, use o seguinte:

du -hd 2 /* 

Nota: este comando irá expor os dois principais níveis de diretório da sua raiz. Isso inclui atravessar um nível em seus volumese listará os tamanhos de resumo de cada diretório de nível superior em cada um dos volumes anexados. Dependendo do que você anexou, esse comando pode levar algum tempo para ser concluído.


16





Outra abordagem é a opção --max-depth.

du -h --max-depth=1 .

Irá listar todos os diretórios e arquivos sob a pasta atual com tamanho.

A profundidade 2 listaria mais um nível de pastas.


11



No Mac, é du -hd 2 . para 2 níveis de profundidade. - Ryan
Ah sim. E provavelmente no FreeBSD também. Obrigado pela informação. - matthias krull


Experimentar:

$ du -s ./f1

ou

$ du -sh ./f1

para tamanhos legíveis mais amigáveis.


5





$ du --max-depth=1 /var/www/ | sort -n -r


2



Ao adicionar uma resposta a uma pergunta antiga com as respostas existentes, é uma boa prática explicar como sua resposta é diferente e incluir algumas explicações para que não seja uma resposta somente de comando. - Jason Aller
Você pode expandir sua resposta para explicar o que os parâmetros fazem? - fixer1234


Aqui está um script POSIX que irá trabalhar com:

  • Um arquivo
  • arquivos
  • Um diretório
  • Diretórios
#!/bin/sh
ls -ARgo "$@" | awk '{q += $3} END {print q}'

Fonte


1





Com base na resposta aceita, este comando mostrará os tamanhos das pastas no diretório, e também irá listá-los por tamanho para você interpretar mais fácil:

$ du -sh */ | sort -rn

1





Vale mencionar o Uso de Discos NCurses comando shell.

O Ncdu é um analisador de uso de disco com uma interface ncurses. Isto é   projetado para encontrar porcos espaço em um servidor remoto, onde você não tem um   toda a configuração gráfica disponível, mas é uma ferramenta útil mesmo em   sistemas desktop comuns. Ncdu pretende ser rápido, simples e fácil de usar,   e deve ser capaz de rodar em qualquer ambiente parecido com POSIX   ncurses instalado.


0