it-swarm.com.de

Wie kann ich Verzeichnisse und ihre Größen in der Eingabeaufforderung auflisten?

Ich möchte die Größe von Unterordnern in einem Ordner sehen, ähnlich dem Befehl linux du -sh. Wie kann ich Verzeichnisse und ihre Größen in der Eingabeaufforderung auflisten?

13
giorgio79

Probieren Sie das Dienstprogramm Disk Usage von Sysinternals aus. Insbesondere sollte du -l 1 die Größe jedes Unterverzeichnisses des aktuellen Verzeichnisses anzeigen. Führen Sie für weitere Informationen du ohne Parameter aus.


Wenn PowerShell in Ordnung ist, versuchen Sie Folgendes:

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

Die Größen sind in Bytes angegeben. Versuchen Sie Folgendes, um sie in einer größeren Einheit wie MB zu formatieren (auf eine Zeile komprimiert):

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

Weitere Informationen finden Sie in diesem Artikel bei Technet .

Wenn Sie eine flexiblere Formatierung der Größen wünschen (Auswahl von kB/MB/GB/etc basierend auf der tatsächlichen Größe), lesen Sie diese Frage und ihre Antworten .


Ich denke nicht, dass es möglich ist, mit der normalen Befehlszeile und nur wenigen einfachen Befehlen das zu tun, was Sie wollen. Sehen Sie sich dieses Skript als Beispiel an (ich werde es hier nicht kopieren, weil ich nicht glaube, dass es sich lohnt, diesen Ansatz zu verfolgen, es sei denn, PowerShell ist nicht verfügbar und Dienstprogramme von Drittanbietern werden nicht akzeptiert.

16
Indrek

Ich habe keine Erfahrung mit du unter Linux. In Windows verwende ich dir /s, um alle Ordner und Unterordner zusammen mit den Dateigrößen aufzulisten.

0
Ankit