Wie erkenne ich die Größe eines Verzeichnisses? Einschließlich Unterverzeichnisse und Dateien.
Wie erkenne ich die Größe eines Verzeichnisses? Einschließlich Unterverzeichnisse und Dateien.
Antworten:
du -s directory_name
Oder um eine vom Menschen lesbare Ausgabe zu erhalten:
du -sh directory_name
Die -s
Option führt nicht die Größe für jedes Unterverzeichnis auf, sondern nur die Gesamtgröße.
du -sh bag
hat perfekt funktioniert!
Während die Verwendung eines separaten Pakets wie ncdu gut funktioniert, kann der gleiche Vergleich vieler Ordner bis zu einem gewissen Grad durchgeführt werden, indem nur eine Liste von Ordnern zum Vergrößern angegeben wird. Zum Beispiel, um Verzeichnisse der obersten Ebene auf Ihrem System zu vergleichen ...
cd /
sudo du -sh ./*
du -sh /*
du -csh
-c ergibt Gesamtsumme
-c
ergibt keinen Sinn, zusammen mit zu verwenden -s
, oder? -s
Zeigt nur die Größe des angegebenen Verzeichnisses an, dh die Gesamtgröße des Verzeichnisses.
Versuchen
du -hax --max-depth=1 / | grep '[0-9]G' | sort -nr
Dies hilft dabei, große Verzeichnisse zu finden, die dann mit durchsucht werden können du -sh ./*
Sie können auch ls -ldh verwenden:
ls -ldh /etc
drwxr-xr-x 145 root root 12K 2012-06-02 11:44 /etc
-l ist für lange Auflistung; -d dient zum Anzeigen von dir-Informationen, nicht des Inhalts des Verzeichnisses. -h dient zum Anzeigen der Größe in einem von huma lesbaren Format.
Ich installiere immer das "ncdu" -Paket und sehe die gesamte Ausgabe aller Verzeichnisse mit grafischer Darstellung. Dies liegt daran, dass ich normalerweise wissen muss, was den meisten Speicherplatz auf meinen Computern belegt, unabhängig davon, wie viel ein einzelnes Verzeichnis zusammenfasst.
Verwendung: sudo ncdu /
(Sie benötigen keine sudo
Ordner, für die Sie Leseberechtigung haben).
Das Durchsuchen der Datenträgernutzungsstatistik für das gesamte Dateisystem dauert eine Weile. Es verfügt über eine schöne grafische Befehlszeilendarstellung und eine Tastaturnavigation mit den Pfeiltasten, z. B. tiefer oder höher in den gescannten Pfad. Sie können Elemente auch löschen, indem Sie drücken D.
Sie können "file-size.sh" aus der awk Velour-Bibliothek verwenden :
ls -ARgo "$@" | awk '{q += $3} END {print q}'
du -hd1
listet in einem für Menschen lesbaren Format die Größen aller Verzeichnisse auf, z
656K ./rubberband
2.2M ./lame
652K ./pkg-config
Ich habe es mit folgendem Befehl versucht, da bereits die beste Antwort geliefert wurde
sudo find . -maxdepth 1 -exec du -shk {} \;| awk 'NR >1'| awk 'BEGIN{sum=1}{sum=sum+$1}END{print sum}'
Ausgabe
sudo find . -maxdepth 1 -exec du -shk {} \;| awk 'NR >1'| awk 'BEGIN{sum=1}{sum=sum+$1}END{print sum}'
679445
du
ist Standardeinheit ist 512-Byte - Blöcke gemäß POSIX und Kilobyte auf Linux (es sei denn , die UmgebungsvariablePOSIXLY_CORRECT
gesetzt ist) , oder mitdu -k
.