Como posso listar diretórios e seus tamanhos no prompt de comando?


15

Gostaria de ver tamanhos de subpastas em uma pasta, semelhante ao du -shcomando linux . Como posso listar diretórios e seus tamanhos no prompt de comando?


PS Eu encontrei este pequeno software livre útil também windirstat.info
giorgio79


Obrigado por apontar du -sh- eu uso o cmder no Windows e funcionou bem.
jbaums

Respostas:


19

Experimente o utilitário Disk Usage da Sysinternals. Especificamente, du -l 1deve mostrar o tamanho de cada subdiretório do diretório atual. Para mais informações, execute dusem nenhum parâmetro.


Se o PowerShell estiver bom, tente o seguinte:

Get-ChildItem |
Where-Object { $_.PSIsContainer } |
ForEach-Object {
  $_.Name + ": " + (
    Get-ChildItem $_ -Recurse |
    Measure-Object Length -Sum -ErrorAction SilentlyContinue
  ).Sum
}

Os tamanhos estão em bytes. Para formatá-los em unidades maiores, como MB, tente o seguinte (condensado em uma linha):

Get-ChildItem | Where-Object { $_.PSIsContainer } | ForEach-Object { $_.Name + ": " + "{0:N2}" -f ((Get-ChildItem $_ -Recurse | Measure-Object Length -Sum -ErrorAction SilentlyContinue).Sum / 1MB) + " MB" }

Para mais informações, consulte este artigo em Technet .

Se você deseja uma formatação mais flexível dos tamanhos (escolhendo kB / MB / GB / etc com base no tamanho real), consulte esta pergunta e suas respostas .


Eu não acho que é possível fazer o que você deseja na linha de comando regular e com apenas alguns comandos simples. Veja esse script como um exemplo (não vou copiá-lo aqui porque não acredito que valha a pena seguir essa abordagem, a menos que o PowerShell não esteja disponível e utilitários de terceiros não sejam aceitáveis).


Parece bom. Vai esperar um pouco para ver se há uma maneira nativa para fazer isso no prompt de comando :)
giorgio79

@ giorgio79 Ver resposta atualizada. É factível de maneira nativa no prompt de comando, mas eu recomendaria o Uso do Disco ou o PowerShell.
Indrek

0

Não tenho experiência duno Linux. Mas no Windows eu uso dir /spara listar todas as pastas e subpastas junto com o tamanho dos arquivos.


1
O /Sswitch não mostra tamanhos de diretórios, simplesmente faz o comando recursivamente passar por todos os subdiretórios.
Indrek

3
Olhe atentamente, também mostra o tamanho de cada pasta. Embora não seja muito legível por humanos.
Ankit

Ah, sim, entendi o que você quer dizer - sob a listagem de arquivos de cada subdiretório, mostra o tamanho total de todos os arquivos nesse diretório. Como você diz, não é realmente fácil de ler e os tamanhos não são mostrados recursivamente.
Indrek
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.