Zum Inhalt springen

Du: Unterschied zwischen den Versionen

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


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


= Installation =
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
* <tt>'''du'''</tt> (disk usage) zeigt die Verteilung des belegten Plattenplatzes auf die Verzeichnisse
* <tt>'''du'''</tt> zeigt den belegten Plattenplatz für das ''Verzeichnis'' und für alle Unterverzeichnisse (in Kilobyte)
* Wenn die Umgebungsvariable <tt>POSIXLY_CORRECT</tt> gesetzt ist, wird die Menge in 512 Byte Blöcken angegeben
== Installation ==
[[du]] ist Teil der [[GNU Core Utilities]]


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


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


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


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


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


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


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


# '''du -shx /root/.[a-zA-z0-9]* 2> /dev/null | sort -h'''
; Versteckte Dateien
Fehler ignorieren
<syntaxhighlight lang="bash" highlight="1" copy>
du -shx /root/.[a-zA-z0-9]* 2> /dev/null | sort -h
</syntaxhighlight>
<!-- output -->
<syntaxhighlight lang="bash" highlight="" line>
</syntaxhighlight>


= Links =
; Größe aller Dateien/Verzeichnisse im aktuellen Verzeichnis, sortiert nach Größe
== Dateien ==
<syntaxhighlight lang="bash" highlight="1" line copy>
du -sh * | sort -h
</syntaxhighlight>
<!-- output -->
<syntaxhighlight lang="bash" highlight="" line>
</syntaxhighlight>


== Man-Page ==
; 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>


== Intern ==
; 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>


== Weblinks ==
== Alternativen ==
; Alternativen
{| class="wikitable options gnu big"
|-
! 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
|}
 
<noinclude>
 
== Anhang ==
=== Siehe auch ===
<div style="column-count:2">
<categorytree hideroot=on mode="pages">{{BASEPAGENAME}}</categorytree>
</div>
----
{{Special:PrefixIndex/{{BASEPAGENAME}}/}}
 
=== Dokumentation ===
 
; Man-Page
# [https://manpages.debian.org/stable/manpages-de/du.1.de.html du (1)]
<!--
; Info-Pages
-->
 
=== Links ===
==== Projekt ====
==== Weblinks ====


[[Kategorie:Linux/Befehl]]
[[Kategorie:Linux/Befehl]]
Zeile 142: Zeile 276:
{{DEFAULTSORT:du}}
{{DEFAULTSORT:du}}
{{DISPLAYTITLE:du}}
{{DISPLAYTITLE:du}}
</noinclude>

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