Ich möchte eine Liste der Ordner aus dem aktuellen Verzeichnis oder einen Ordner, den ich mit ihrer Größe angegeben habe.
Ich habe es mit du versucht, aber ich erhalte nur die Größe der von mir angegebenen Verzeichnisse (du ./f1), und ls zeigt die Größe der Ordner nicht an.
Wie mache ich das ohne Scripting?
command-line
unix
terminal
kevin
quelle
quelle
Antworten:
Wenn Sie alle Verzeichnisse im aktuellen Verzeichnis anzeigen möchten:
So zeigen Sie sie von einem anderen Verzeichnis aus an:
Wenn Sie sicherstellen möchten, dass Verzeichnisse mit Namen, die mit einem Punkt beginnen, enthalten sind, tun Sie dies
shopt -s dotglob
zuerst.quelle
du -s */ | sort -n
.shopt -s dotglob
docAuf einem Mac wird die Option --max-depth durch -d [depth] ersetzt. Um eine von Menschen lesbare Liste Ihres Root-Laufwerks plus 2 Ebenen tief zu sehen, verwenden Sie Folgendes:
Hinweis: Mit diesem Befehl werden die beiden obersten Verzeichnisebenen von Ihrem Stammverzeichnis angezeigt. Dies beinhaltet das Überqueren einer Ebene in Ihren Volumes und listet die zusammenfassenden Größen jedes Verzeichnisses der obersten Ebene in jedem Ihrer angehängten Volumes auf. Je nachdem, was Sie angehängt haben, kann dieser Befehl einige Zeit in Anspruch nehmen.
quelle
Ein weiterer Ansatz ist die Option --max-depth.
Listet alle Verzeichnisse und Dateien im aktuellen Ordner mit der Größe auf.
Tiefe 2 würde eine weitere Ordnerebene auflisten.
quelle
du -hd 2 .
für 2 Tiefenstufen.Versuchen:
oder
für freundlicher lesbare Größen.
quelle
$ du --max-depth=1 /var/www/ | sort -n -r
quelle
Erwähnenswert ist die NCurses-Datenträgernutzung Shell-Befehl.
quelle
Aufbauend auf der akzeptierten Antwort werden mit diesem Befehl die Größen der Ordner im Verzeichnis angezeigt. und listet sie auch nach Größe auf, damit Sie sie leichter interpretieren können:
quelle
Auf dem Mac können Sie die GNU (Linux) -Implementierung von installieren
du
mit Homebrew (brew install coreutils
). Dann zum Beispiel:woher
gdu
ist der Name der GNU-Implementierung vondu
(Standardmäßig versteckt sich Homebrew nicht/usr/bin/du
);s
Erzeugt eine Gesamtsumme für den angegebenen Ordner (weglassen, wenn die Aufschlüsselung angezeigt werden soll).h
gibt lesbare Größen aus;L
folgt symlinks;--exclude=.git
Schließt das Git-Verzeichnis im angegebenen Ordner aus (dies ist nur ein Beispiel).Sie können weitere Ordner durch Hinzufügen ignorieren
--exclude=blah
. Sie können auch mehrere Ordner gleichzeitig angeben (z. B.gdu folder1 folder2 ...
), und in diesem Fall können Sie alle Zwischensummen mit der Option zu einer Größe zusammenfassenc
.quelle
Hier ist ein POSIX-Skript, mit dem Folgendes funktioniert:
Quelle
quelle