Zum Inhalt springen

Du: Unterschied zwischen den Versionen

Aus Foxwiki
 
(10 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
'''du''' - Zeigt belegten Speicherplatz für ein Verzeichnis und dessen Unterverzeichnisse
'''du''' - Belegten Speicherplatz anzeigen


== Beschreibung ==
== Beschreibung ==
; disk usage (du)
Zeigt belegten Speicherplatz für ein Verzeichnis und dessen Unterverzeichnisse
* Ohne Angabe von Optionen erfolgt die Ausgabe für den aktuellen Ordner und in der Einheit Kilobyte
* Ohne Angabe von Optionen erfolgt die Ausgabe für den aktuellen Ordner und in der Einheit Kilobyte
* <tt>'''du'''</tt> (disk usage) zeigt die Verteilung des belegten Plattenplatzes auf die Verzeichnisse
* <tt>'''du'''</tt> (disk usage) zeigt die Verteilung des belegten Plattenplatzes auf die Verzeichnisse
Zeile 10: Zeile 13:


== Aufruf ==
== Aufruf ==
<syntaxhighlight lang="bash" highlight="1" line copy>
<syntaxhighlight lang="bash" highlight="1">
du [Option(en)] [Dateien]
</syntaxhighlight>
</syntaxhighlight>


'''du''' [Option(en)] [Dateien]
<syntaxhighlight lang="bash" highlight="1">
 
du [-abcklsxDLS] [-all] [-total] [-count-links] [-summarize] [-bytes] [-kilobytes] [-one-file-system] [-separate-dirs] [-dereference] [-dereference-args] [''Verzeichnis'' ...]
'''du''' [-abcklsxDLS] [-all] [-total] [-count-links] [-summarize] [-bytes] [-kilobytes] [-one-file-system] [-separate-dirs] [-dereference] [-dereference-args] [''Verzeichnis'' ...]
</syntaxhighlight>


=== Optionen ===
=== Optionen ===
Zeile 22: Zeile 26:
! Unix !! GNU !! Parameter !! Beschreibung
! Unix !! GNU !! Parameter !! Beschreibung
|-
|-
| || || ||
| -a || --all
| || Ausgabe erfolgt auch für Dateien
|-
|-
|}
| -b || --bytes
 
| || Ausgabe in Byte
{| class="wikitable options big"
|-
|-
! Option !! !! Beschreibung
| -c || --total
| || Gesamtgröße der übergebenen Dateien
|-
|-
| -a || --all || Ausgabe erfolgt auch für Dateien
| -d
| --max-depth=
|N
|Summe für ein Verzeichnis ausgeben (oder einer Datei, mit --all) nur, wenn es N oder weniger Ebenen unterhalb des Befehlszeilenarguments ist. --max-depth=0 ist dasselbe wie --summarize.
|-
|-
| -b || --bytes || Ausgabe erfolgt in Bytes
| -D || --dereference-args
| || Löst nur symbolische Verknüpfungen auf, die auf der      Befehlszeile angegeben wurden.
|-
|-
| -c || --total || Anzeige der Gesamtgröße
| -h || --human-readable
| || Größe in menschenlesbaren Einheiten (K,M,G)
|-
|-
| -h || --human-readable || gibt die Größen in verständlicher Form aus (wie 1K 23M oder 4G)
| | '''-k '''
| --block-size=1K
|
| | Ausgabe in Kilobyte (auch wenn die Umgebungsvariable <tt>POSIXLY_CORRECT</tt> gesetzt ist)
|-
|-
| -l || --count-links || zählt die Größen mehrfach, wenn es sich um Hard-Links handelt
| -l || --count-links  
| || Zählt  [[Hardlink|Hardlinks]] mehrfach
|-
|-
| -s || --separate-dirs || die Größe der Unterverzeichnisse werden nicht miteinbezogen
|  | '''-L '''
|-
| --dereference
| -x || --one-file-system || ignoriert Verzeichnisse, die in einem anderen Dateisystem liegen
|
|-
|  | Symbolischen Links dereferenzieren, es wird der Platzbedarf der referenzierten Datei statt des Links gezeigt
| -s || --summarize || gibt nur die Gesamtgröße für jedes Argument an
|-
| -D || --dereference-args || folgt dem Verweis auf ein anderes Verzeichnis bei einem symbolischen Link, wenn dieser als
Kommandozeilenargument übergeben wird. Andere symbolische Links werden nicht dereferenziert
|-
|}
 
{| class="wikitable options big"
|-
|  | '''-a '''
|  | (all) zeigt auch den Platzbedarf aller Dateien
|-
|  | '''-b '''
| | (bytes) zeigt den Platzbedarf in Bytes
|-
|  | '''-c '''
|  | zeigt den (summierten) Platzbedarf der in der Kommandozeile übergebenen Dateien
|-
|  | '''-k '''
|  | (kilobytes) gibt den Platzbedarf in Kilobytes, auch wenn die Umgebungsvariable <tt>POSIXLY_CORRECT</tt> gesetzt ist
|-
|  | '''-l '''
|  | zählt die Größe der (harten) Links mit, auch wenn sie dadurch doppelt vorkommen
|-
|-
|  | '''-s '''
|  | '''-s '''
| | gibt nur die Summe für jedes Verzeichnis in der Kommandozeile
| --summarize
|-
|
| | '''-x '''
|  | Summe für jedes Verzeichnis
|  | ignoriert Verzeichnisse, die in anderen Dateisystemen liegen
|-
|-
| | '''-D '''
| -S || --separate-dirs
| | folgt dem Verweis auf ein anderes Verzeichnis bei einem symbolischen Link, wenn dieser als Kommandozeilenargument übergeben wird. Andere symbolische Links werden nicht dereferenziert
| || Bei Verzeichnissen die Größe von Unterverzeichnissen nicht mitzählen
|-
|-
| | '''-L '''
| -x || --one-file-system
| | alle symbolischen Links werden dereferenziert, das heißt es wird der Platzbedarf des referenzierten Verzeichnisses anstelle des Linkfiles gezeigt
| || Verzeichnisse in anderen Dateisystemen ignorieren
|-
|-
| | '''-S '''
|
| | zeigt den Platzbedarf jedes Verzeichnisses einzeln, ohne die Unterverzeichnisse
| --exclude=
|MUSTER
|Dateien ausschließen, die auf MUSTER passen
|-
|-
|}
|}
Zeile 98: Zeile 90:


== Anwendung ==
== Anwendung ==
<syntaxhighlight lang="bash" highlight="1" line copy>
; Dateigröße anzeigen
<syntaxhighlight lang="bash" highlight="1" copy>
du
</syntaxhighlight>
</syntaxhighlight>
<!-- output -->
<!-- output -->
<syntaxhighlight lang="bash" highlight="" line>
<syntaxhighlight lang="bash" highlight="" line>
3076    ./Briefe
3076    ./Bilder
3076    ./Musik
9232   
</syntaxhighlight>
</syntaxhighlight>


$ '''du'''
; Dateigröße menschenlesbar anzeigen
3076   ./Briefe
<syntaxhighlight lang="bash" highlight="1" copy>
3076   ./Bilder
du -h
3076   ./Musik
</syntaxhighlight>
9232    
<!-- output -->
<syntaxhighlight lang="bash" highlight="" line>
3,1M   ./Briefe
3,1M   ./Bilder
3,1M   ./Musik
9,1M    
</syntaxhighlight>


$ '''du -h'''
; Dateien und Verzeichnisse anzeigen
3,1M    ./Briefe
<syntaxhighlight lang="bash" highlight="1" copy>
3,1M    ./Bilder
du -ah
3,1M    ./Musik
</syntaxhighlight>
9,1M     
<!-- output -->
<syntaxhighlight lang="bash" highlight="" line>
1,0M    ./Briefe/brief3.doc
1,0M    ./Briefe/brief2.doc
1,0M    ./Briefe/brief1.doc
3,1M    ./Briefe
1,0M    ./Bilder/photo1.png
1,0M    ./Bilder/photo2.png
1,0M    ./Bilder/photo3.png
3,1M    ./Bilder
1,0M    ./Musik/song1.mp3
1,0M    ./Musik/song2.mp3
1,0M    ./Musik/song3.mp3
3,1M    ./Musik
9,1M     
</syntaxhighlight>


$ '''du -ah'''
; Gesamtgröße anzeigen
1,0M    ./Briefe/brief3.doc
<syntaxhighlight lang="bash" highlight="1" copy>
1,0M    ./Briefe/brief2.doc
du -sh
1,0M    ./Briefe/brief1.doc
</syntaxhighlight>
3,1M    ./Briefe
<!-- output -->
1,0M    ./Bilder/photo1.png
<syntaxhighlight lang="bash" highlight="" line>
1,0M    ./Bilder/photo2.png
19M   
1,0M    ./Bilder/photo3.png
</syntaxhighlight>
3,1M    ./Bilder
1,0M    ./Musik/song1.mp3
1,0M    ./Musik/song2.mp3
1,0M    ./Musik/song3.mp3
3,1M    ./Musik
9,1M   


$ '''du -sh'''
; Zeitstempel anzeigen
19M   
<syntaxhighlight lang="bash" highlight="1" copy>
du -h --time
</syntaxhighlight>
<!-- output -->
<syntaxhighlight lang="bash" highlight="" line>
3,1M    2020-11-10 13:54        ./Briefe
3,1M    2020-11-10 13:53        ./Bilder
3,1M    2020-11-10 13:54        ./Musik
9,1M    2020-11-10 13:54       
</syntaxhighlight>


$ '''du -h --time'''
; Dateien ausschießen
3,1M   2020-11-10 13:54        ./Briefe
<syntaxhighlight lang="bash" highlight="1" copy>
3,1M    2020-11-10 13:53        ./Bilder
du -ah --exclude="*.doc"</syntaxhighlight>
3,1M    2020-11-10 13:54        ./Musik
<!-- output -->
9,1M   2020-11-10 13:54       
<syntaxhighlight lang="bash" highlight="" line>
4,0K   ./Briefe
1,0M    ./Bilder/photo1.png
1,0M    ./Bilder/photo2.png
1,0M    ./Bilder/photo3.png
3,1M    ./Bilder
1,0M    ./Musik/song1.mp3
1,0M    ./Musik/song2.mp3
1,0M    ./Musik/song3.mp3
3,1M    ./Musik
6,1M
</syntaxhighlight>


$ '''du -ah --exclude="*.doc"'''
; Versteckte Dateien
4,0K    ./Briefe
Fehler ignorieren
1,0M    ./Bilder/photo1.png
<syntaxhighlight lang="bash" highlight="1" copy>
1,0M    ./Bilder/photo2.png
du -shx /root/.[a-zA-z0-9]* 2> /dev/null | sort -h
1,0M    ./Bilder/photo3.png
</syntaxhighlight>
3,1M    ./Bilder
<!-- output -->
1,0M    ./Musik/song1.mp3
<syntaxhighlight lang="bash" highlight="" line>
1,0M    ./Musik/song2.mp3
</syntaxhighlight>
1,0M    ./Musik/song3.mp3
3,1M    ./Musik
6,1M   


du -shx /root/.[a-zA-z0-9]* 2> /dev/null | sort -h
; Größe aller Dateien/Verzeichnisse im aktuellen Verzeichnis, sortiert nach Größe
<syntaxhighlight lang="bash" highlight="1" line copy>
du -sh * | sort -h
</syntaxhighlight>
<!-- output -->
<syntaxhighlight lang="bash" highlight="" line>
</syntaxhighlight>


du -sh * | sort -h: Zeigt die Größe aller Dateien/Ordner im aktuellen Verzeichnis, sortiert nach Größe
; Nur erste Ebene der Unterverzeichnisse
<syntaxhighlight lang="bash" highlight="1" line copy>
du -h --max-depth=1
</syntaxhighlight>
<!-- output -->
<syntaxhighlight lang="bash" highlight="" line>
</syntaxhighlight>


du -h --max-depth=1: Listet nur die erste Ebene der Unterverzeichnisse auf
; Sortierter Überblick der Systempartition
Fehler ignorieren
<syntaxhighlight lang="bash" highlight="1" copy>
du -shx /* 2>/dev/null | sort -h
</syntaxhighlight>
<!-- output -->
<syntaxhighlight lang="bash" highlight="" line>
0      /bin
0      /dev
0      /initrd.img
0      /initrd.img.old
0      /lib
0      /lib32
0      /lib64
0      /proc
0      /sbin
0      /sys
0      /vmlinuz
0      /vmlinuz.old
4,0K    /home
4,0K    /mnt
4,0K    /srv
8,0K    /snap
16K    /lost+found
16K    /media
1,5M    /tmp
3,0M    /run
27M    /etc
167M    /boot
631M    /root
1,7G    /opt
4,5G    /var
27G    /usr
</syntaxhighlight>


== Alternativen ==
== Alternativen ==
Zeile 184: Zeile 259:


=== Dokumentation ===
=== Dokumentation ===
; Man-Page
# [https://manpages.debian.org/stable/manpages-de/du.1.de.html du (1)]
<!--
<!--
; Man-Page
# [https://manpages.debian.org/stable/procps/pgrep.1.de.html prep(1)]
; Info-Pages
; Info-Pages
-->
-->

Aktuelle Version vom 24. Mai 2026, 13:02 Uhr

du - Belegten Speicherplatz anzeigen

Beschreibung

disk usage (du)

Zeigt belegten Speicherplatz für ein Verzeichnis und dessen Unterverzeichnisse

  • Ohne Angabe von Optionen erfolgt die Ausgabe für den aktuellen Ordner und in der Einheit Kilobyte
  • du (disk usage) zeigt die Verteilung des belegten Plattenplatzes auf die Verzeichnisse
  • du zeigt den belegten Plattenplatz für das Verzeichnis und für alle Unterverzeichnisse (in Kilobyte)
  • Wenn die Umgebungsvariable POSIXLY_CORRECT gesetzt ist, wird die Menge in 512 Byte Blöcken angegeben

Installation

du ist Teil der GNU Core Utilities

Aufruf

du [Option(en)] [Dateien]
du [-abcklsxDLS] [-all] [-total] [-count-links] [-summarize] [-bytes] [-kilobytes] [-one-file-system] [-separate-dirs] [-dereference] [-dereference-args] [''Verzeichnis'' ...]

Optionen

Unix GNU Parameter Beschreibung
-a --all Ausgabe erfolgt auch für Dateien
-b --bytes Ausgabe in Byte
-c --total Gesamtgröße der übergebenen Dateien
-d --max-depth= N Summe für ein Verzeichnis ausgeben (oder einer Datei, mit --all) nur, wenn es N oder weniger Ebenen unterhalb des Befehlszeilenarguments ist. --max-depth=0 ist dasselbe wie --summarize.
-D --dereference-args Löst nur symbolische Verknüpfungen auf, die auf der Befehlszeile angegeben wurden.
-h --human-readable Größe in menschenlesbaren Einheiten (K,M,G)
-k --block-size=1K Ausgabe in Kilobyte (auch wenn die Umgebungsvariable POSIXLY_CORRECT gesetzt ist)
-l --count-links Zählt Hardlinks mehrfach
-L --dereference Symbolischen Links dereferenzieren, es wird der Platzbedarf der referenzierten Datei statt des Links gezeigt
-s --summarize Summe für jedes Verzeichnis
-S --separate-dirs Bei Verzeichnissen die Größe von Unterverzeichnissen nicht mitzählen
-x --one-file-system Verzeichnisse in anderen Dateisystemen ignorieren
--exclude= MUSTER Dateien ausschließen, die auf MUSTER passen

Parameter

Umgebungsvariablen

Exit-Status

Wert Beschreibung
0 Erfolg
>0 Fehler

Anwendung

Dateigröße anzeigen
du
3076    ./Briefe
3076    ./Bilder
3076    ./Musik
9232
Dateigröße menschenlesbar anzeigen
du -h
3,1M    ./Briefe
3,1M    ./Bilder
3,1M    ./Musik
9,1M
Dateien und Verzeichnisse anzeigen
du -ah
1,0M    ./Briefe/brief3.doc
1,0M    ./Briefe/brief2.doc
1,0M    ./Briefe/brief1.doc
3,1M    ./Briefe
1,0M    ./Bilder/photo1.png
1,0M    ./Bilder/photo2.png
1,0M    ./Bilder/photo3.png
3,1M    ./Bilder
1,0M    ./Musik/song1.mp3
1,0M    ./Musik/song2.mp3
1,0M    ./Musik/song3.mp3
3,1M    ./Musik
9,1M
Gesamtgröße anzeigen
du -sh
19M
Zeitstempel anzeigen
du -h --time
3,1M    2020-11-10 13:54        ./Briefe
3,1M    2020-11-10 13:53        ./Bilder
3,1M    2020-11-10 13:54        ./Musik
9,1M    2020-11-10 13:54
Dateien ausschießen
du -ah --exclude="*.doc"
4,0K    ./Briefe
1,0M    ./Bilder/photo1.png
1,0M    ./Bilder/photo2.png
1,0M    ./Bilder/photo3.png
3,1M    ./Bilder
1,0M    ./Musik/song1.mp3
1,0M    ./Musik/song2.mp3
1,0M    ./Musik/song3.mp3
3,1M    ./Musik
6,1M
Versteckte Dateien

Fehler ignorieren

du -shx /root/.[a-zA-z0-9]* 2> /dev/null | sort -h
Größe aller Dateien/Verzeichnisse im aktuellen Verzeichnis, sortiert nach Größe
du -sh * | sort -h
Nur erste Ebene der Unterverzeichnisse
du -h --max-depth=1
Sortierter Überblick der Systempartition

Fehler ignorieren

du -shx /* 2>/dev/null | sort -h
0       /bin
0       /dev
0       /initrd.img
0       /initrd.img.old
0       /lib
0       /lib32
0       /lib64
0       /proc
0       /sbin
0       /sys
0       /vmlinuz
0       /vmlinuz.old
4,0K    /home
4,0K    /mnt
4,0K    /srv
8,0K    /snap
16K     /lost+found
16K     /media
1,5M    /tmp
3,0M    /run
27M     /etc
167M    /boot
631M    /root
1,7G    /opt
4,5G    /var
27G     /usr

Alternativen

Alternativen
Programm Beschreibung
ncdu Interaktive TUI (Terminal User Interface). Zeigt Verzeichnisgrößen, prozentuale Anteile und ermöglicht das Löschen mit der "d"-Taste
duf Ersatz für df und du, der Festplattennutzung, freie Speicherplätze und Einhängepunkte (Mounts) sehr übersichtlich und farbig darstellt
gdu schnelle, in Go geschriebene Alternative, die ncdu ähnelt, aber bei großen Verzeichnisstrukturen performanter ist
udu schnelle, neuere Alternative, die auf Geschwindigkeit ausgelegt ist


Anhang

Siehe auch



Dokumentation

Man-Page
  1. du (1)

Projekt