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

13

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

    
por giorgio79 29.09.2012 / 13:20

2 respostas

16

Experimente o utilitário Uso de disco 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 correto, 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 alguma unidade maior, 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 na 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ê quer da linha de comando regular e com apenas alguns comandos simples. Veja este script como um exemplo (não vou copiá-lo aqui porque eu não acredito que vale a pena perseguir essa abordagem , a menos que o PowerShell não esteja disponível e os utilitários de terceiros não sejam aceitáveis).

    
por 29.09.2012 / 13:44
0

Não tenho experiência com du no Linux. Mas no windows eu uso dir /s para listar todas as pastas e subpastas junto com o tamanho dos arquivos.

    
por 29.09.2012 / 13:59