du

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

  1. Terminal - einen Terminal öffnen

Inhaltsverzeichnis
  1. Installation
  2. Aufruf
  3. Optionen
  4. Beispiele
  5. Links

Wiki/Icons/terminal.png disk usage gibt den belegten Festplatten-Platz an. Der Befehl df zeigt dagegen den freien Festplattenplatz an.

Installation

Das Programm du ist im essentiellen Paket

von Ubuntu enthalten und ist deshalb auf jedem System installiert.

Aufruf

Kurze Syntaxbeschreibung für die Verwendung in der Shell[1]:

du [OPTIONEN] [DATEIEN] 

Die Angabe von einer oder mehrerer Dateien ist ebenfalls optional. Wird eine Datei angegeben, gibt du nur Informationen über die Partition aus, auf der sich DATEI befindet. Ohne Optionen wird die Belegung in Blöcken à 1024 Byte ausgegeben.

Optionen

OptionLangformBeschreibung
-a --all gibt die Belegung für alle Dateien, nicht nur Verzeichnisse an
--apparent-size gibt die eigentliche Dateigröße an, statt der Belegung der Festplatte. Wenn diese normalerweise kleiner ist, kann sie auch aufgrund von Löchern in "verteilten" Dateien, indirekten Blöcken und Ähnlichem, größer sein
-B --block-size=GRößE verwendet GRößE-byte Blöcke
-b --bytes entspricht --apparent-size --block-size=1
-c --total erstellt die Gesamtgröße
-D --dereference-args dereferenziert Dateien, die symbolische Links sind
-h --human-readable gibt die Größen in verständlichem Format an (wie 1K 234M oder 2G)
--si wie -h, aber mit Vielfachen von 1000 statt 1024
-k entspricht --block-size=1K (Standard)
-l --count-links zählt die Größen mehrmals, wenn es sich um Hard-Links handelt
-L --dereference dereferenziert alle symbolischen Links
-P --no-dereference symbolischen Links nicht folgen (dies ist die Standardeinstellung)
-0 --null beendet jede Ausgabezeile mit einem 0 Byte Zeichen, statt mit einem newline
-S --separate-dirs die Größe der Unterverzeichnisse nicht miteinbeziehen
-s --summarize gibt nur die Gesamtgröße für jedes Argument an
-x --one-file-system überspringt Verzeichnisse, die in einem anderen Dateisystem liegen
-X Datei --exclude-from=DATEI schließt alle Dateien aus der Untersuchung aus, die auf ein Muster aus DATEI passen
--exclude=MUSTER schließt Dateien aus, auf die MUSTER passt
--max-depth=N gibt die Gesamtgröße eines Verzeichnisses nur aus, wenn es nicht tiefer als N Ebenen unter dem übergebenen Argument liegt. --max-depth=0 entspricht --summarize
-m entspricht --block-size=1M (veraltet)
--help gibt den Hilfe-Text aus
--version gibt die Versionsinformationen aus

Hinweis:

Bei den zu verwendenden Mustern handelt es sich um Shell-Wildcard Muster, nicht um Reguläre Ausdrücke (regular expressions).

Beispiele

Den gesamten belegten Festplattenplatz des Systems anzeigen:

sudo du -hs / 

Den gesamten Platz angeben, den das aktuelle Verzeichnis einnimmt:

du -hs . 

Die Belegung aller ".pdf"-Dateien im aktuellen Verzeichnis einzeln und insgesamt in Blöcken à 1024 Byte ausgeben:

du -c *.pdf 

Den belegten Platz nach Größe sortieren:

du -h * | sort -hr 

Den Platz angeben, den das aktuelle Verzeichnis einnimmt, wenn alle ".tar"-Dateien ignoriert werden:

du --exclude="*.tar*" -hs