Gostaria de ver tamanhos de subpastas em uma pasta, semelhante ao du -sh
comando linux . Como posso listar diretórios e seus tamanhos no prompt de comando?
Gostaria de ver tamanhos de subpastas em uma pasta, semelhante ao du -sh
comando linux . Como posso listar diretórios e seus tamanhos no prompt de comando?
Respostas:
Experimente o utilitário Disk Usage da Sysinternals. Especificamente, du -l 1
deve mostrar o tamanho de cada subdiretório do diretório atual. Para mais informações, execute du
sem 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).
Não tenho experiência du
no Linux. Mas no Windows eu uso dir /s
para listar todas as pastas e subpastas junto com o tamanho dos arquivos.
/S
switch não mostra tamanhos de diretórios, simplesmente faz o comando recursivamente passar por todos os subdiretórios.