Der Befehl du
, kurz für „disk usage“, gibt die geschätzte Menge an Speicherplatz an, die von bestimmten Dateien oder Verzeichnissen verwendet wird. Es ist praktisch nützlich, um Dateien und Verzeichnisse zu finden, die viel Speicherplatz beanspruchen.,
Wie zu Verwenden die du befehl #
Die allgemeine syntax für die du
befehl ist wie folgt:
Wenn die gegebene FILE
ist ein verzeichnis, du
wird zusammenfassen disk nutzung jeder Datei und Unterverzeichnis in diesem Verzeichnis. Wenn keine FILE
angegeben ist, meldet du
die Festplattennutzung des aktuellen Arbeitsverzeichnisses .,
Wenn ohne Option ausgeführt du
zeigt die Festplattennutzung der angegebenen Datei oder des Verzeichnisses und jedes ihrer Unterverzeichnisse in Bytes an.
du ~/Documents
Sie können auch mehrere Dateien und Verzeichnisse als Argumente an den Befehl du
übergeben:
du ~/Documents ~/Pictures ~/.zshrc
Wenn Sie du
in einer Datei oder einem Verzeichnis ausführen, für die Sie keine Berechtigungen haben, erhalten Sie so etwas wie“du: Verzeichnis kann nicht gelesen werden“. In dieser Situation müssen Sie dem Befehl sudo
voranstellen .,
du
hat viele Optionen, wir skizzieren nur die am häufigsten verwendeten.
Die-a
– Option weistdu
an, die Speicherplatznutzung jeder Datei im Verzeichnis zu melden.
Normalerweise möchten Sie nur den vom angegebenen Verzeichnis belegten Speicherplatz in einem lesbaren Format anzeigen. Verwenden Sie dazu die Option -h
.,
Um beispielsweise die Gesamtgröße des /var/lib
und aller seiner Unterverzeichnisse abzurufen, führen Sie den folgenden Befehl aus:
sudo du -h /var
Wir verwenden sudo
da die meisten Dateien und Verzeichnisse innerhalb des /var/lib
– Verzeichnisses dem Root-Benutzer gehören und sind nicht lesbar durch die regelmäßige benutzer., Die Ausgabe sieht ungefähr so aus:
...4.0K/var/lib/apt/mirrors/partial8.0K/var/lib/apt/mirrors205M/var/lib/apt2.9G/var/lib/
Um nur die Gesamtgröße des angegebenen Verzeichnisses zu melden, und nicht für Unterverzeichnisse Verwenden Sie die Option -s
:
sudo du -sh /var
2.9G/var
Die -c
option teilt du
mit, um eine Gesamtsumme zu melden. Dies ist nützlich, wenn Sie die kombinierte Größe von zwei oder mehr Verzeichnissen erhalten möchten.,
sudo du -csh /var/log /var/lib
1.2G/var/log2.9G/var/lib4.1Gtotal
Wenn Sie die Festplattennutzung der Unterverzeichnisse auf n-Ebene anzeigen möchten, verwenden Sie die Option --max-depth
und geben Sie die Ebene der Unterverzeichnisse an. Um beispielsweise einen Bericht über die Verzeichnisse der ersten Ebene abzurufen, verwenden Sie:
sudo du -h --max-depth=1 /var/lib
...544K/var/lib/usbutils4.0K/var/lib/acpi-support205M/var/lib/apt2.9G/var/lib
Das Standardverhalten des Dienstprogramms du
besteht darin, den vom Verzeichnis oder der Datei verwendeten Speicherplatz neu zu erstellen. Um die scheinbare Größe einer Datei zu ermitteln, verwenden Sie den Schalter --apparent-size
., Die „scheinbare Größe“ einer Datei ist, wie viele Daten sich tatsächlich in der Datei befinden.
sudo du -sh --apparent-size /var/lib
2.9G/var/lib
du
können Sie auch verwenden, die das shell-Muster. Um beispielsweise die Größe aller Verzeichnisse abzurufen, die mit „Do“ in Ihrem Home-Verzeichnis beginnen, führen Sie Folgendes aus:
sudo du -csh ~/Do*
102M/home/linuxize/Documents358M/home/linuxize/Downloads460Mtotal
Verwenden Sie du mit anderen Befehlen #
Der Befehl du
kann mit anderen Befehlen mit Pipes kombiniert werden.,
Um beispielsweise die 5 größten Verzeichnisse innerhalb des Verzeichnisses /var
zu drucken, übergeben Sie die Ausgabe von du
an den Befehl sort
, um die Verzeichnisse nach ihrer Größe zu sortieren und dann die Ausgabe an den Befehl head
weiterzuleiten, der nur die obersten 5 Verzeichnisse druckt:
4.6G/var/2.9G/var/lib2.6G/var/lib/snapd1.7G/var/lib/snapd/snaps1.2G/var/log/journal/af8ce1d394b844fea8c19ea5c6a9bd09
Schlussfolgerung #
Inzwischen sollten Sie ein gutes Verständnis dafür haben, wie Sie den Befehl du
verwenden.,
im Gegensatz zu df
, das Informationen über die Festplattennutzung der eingehängten Dateisysteme ausgibt, gibt Ihnen der Befehl du
Schätzung des von bestimmten Dateien oder Verzeichnissen verwendeten Speicherplatzes.
Sie können alle verfügbaren du
Befehlsoptionen anzeigen, indem Sie man du
in Ihr Terminal eingeben.