Il comando du (disk usage) permette di visionare lo spazio utilizzato su disco da parte di file e cartelle. I semplici comandi, o la combinazione degli stessi, permette di ottenere informazioni utili.

Il comando du permette di vedere dimensioni di file e cartelle. Il risultato viene riportato in byte.

[root@101 ~]# du
0       ./.cache/mesa_shader_cache
4       ./.cache/dconf
4       ./.cache
4       ./.dbus/session-bus
4       ./.dbus
0       ./.config/ibus/bus
0       ./.config/ibus
0       ./.config/procps
0       ./.config
0       ./.local/share/ibus-typing-booster/data
0       ./.local/share/ibus-typing-booster
0       ./.local/share
0       ./.local
48      .

Per rendere il comando leggibile dall’uomo si può usare il flag -h (human). Il risultato viene riportato in kb, MB o altre dimensioni, leggibili in modo semplice.

[root@101 ~]# du -h
0       ./.cache/mesa_shader_cache
4,0K    ./.cache/dconf
4,0K    ./.cache
4,0K    ./.dbus/session-bus
4,0K    ./.dbus
0       ./.config/ibus/bus
0       ./.config/ibus
0       ./.config/procps
0       ./.config
0       ./.local/share/ibus-typing-booster/data
0       ./.local/share/ibus-typing-booster
0       ./.local/share
0       ./.local
48K     .

Con il flag -s si ottiene la sintesi della dimensione della cartella in cui ci si trova o si indica.

[root@101 ~]# du -s
48      .

Combinato con il flag -h si ottiene il risultato in modalità più leggibile

[root@101 ~]# du -hs
48K     .

Aggiungendo un asterisco si ottiene la visualizzazione della dimensione dei file

[root@101 ~]# du -hs *
4,0K    anaconda-ks.cfg
4,0K    esempio.txt
4,0K    initial-setup-ks.cfg

Utilizzando il flag -a (all) si può ottenere la dimensione di tutti i file e cartelle in cui ci si trova o che si indica, inclusi quelli nascosti.

[root@101 ~]# du -a
4       ./.bash_logout
4       ./.bash_profile
4       ./.bashrc
4       ./.cshrc
4       ./.tcshrc
4       ./anaconda-ks.cfg
0       ./.cache/mesa_shader_cache/index
0       ./.cache/mesa_shader_cache
4       ./.cache/dconf/user
4       ./.cache/dconf
4       ./.cache
4       ./.dbus/session-bus/18d2c1076016418a810e68c9b06233b8-9
4       ./.dbus/session-bus
4       ./.dbus
0       ./.config/ibus/bus
0       ./.config/ibus
0       ./.config/procps
0       ./.config
4       ./initial-setup-ks.cfg
4       ./.bash_history
0       ./.local/share/ibus-typing-booster/data
0       ./.local/share/ibus-typing-booster
0       ./.local/share
0       ./.local
4       ./.viminfo
4       ./esempio.txt
48      .

Aggiungendo il flag -h si può interpretare più facilmente il tutto

[root@101 ~]# du -ah
4,0K    ./.bash_logout
4,0K    ./.bash_profile
4,0K    ./.bashrc
4,0K    ./.cshrc
4,0K    ./.tcshrc
4,0K    ./anaconda-ks.cfg
0       ./.cache/mesa_shader_cache/index
0       ./.cache/mesa_shader_cache
4,0K    ./.cache/dconf/user
4,0K    ./.cache/dconf
4,0K    ./.cache
4,0K    ./.dbus/session-bus/18d2c1076016418a810e68c9b06233b8-9
4,0K    ./.dbus/session-bus
4,0K    ./.dbus
0       ./.config/ibus/bus
0       ./.config/ibus
0       ./.config/procps
0       ./.config
4,0K    ./initial-setup-ks.cfg
4,0K    ./.bash_history
0       ./.local/share/ibus-typing-booster/data
0       ./.local/share/ibus-typing-booster
0       ./.local/share
0       ./.local
4,0K    ./.viminfo
4,0K    ./esempio.txt
48K     .

Con il flag –time si ottiene la lista di file e cartelle in ordine crescente di data di creazione/modifica.

[root@101 ~]# du --time
0       2022-07-14 11:45        ./.cache/mesa_shader_cache
4       2022-07-14 11:45        ./.cache/dconf
4       2022-07-14 11:45        ./.cache
4       2022-07-14 11:45        ./.dbus/session-bus
4       2022-07-14 11:45        ./.dbus
0       2022-07-14 11:45        ./.config/ibus/bus
0       2022-07-14 11:45        ./.config/ibus
0       2022-07-14 12:02        ./.config/procps
0       2022-07-14 12:02        ./.config
0       2022-07-14 12:12        ./.local/share/ibus-typing-booster/data
0       2022-07-14 12:12        ./.local/share/ibus-typing-booster
0       2022-07-14 12:12        ./.local/share
0       2022-07-14 12:12        ./.local
48      2022-08-07 12:13        .

Insieme ai flag -ah si ottiene un risultato maggiormente leggibile includendo anche i file e le cartelle nascoste

[root@101 ~]# du -ah --time
4,0K    2018-08-12 13:51        ./.bash_logout
4,0K    2018-08-12 13:51        ./.bash_profile
4,0K    2018-08-12 13:51        ./.bashrc
4,0K    2018-08-12 13:51        ./.cshrc
4,0K    2018-08-12 13:51        ./.tcshrc
4,0K    2022-07-14 11:43        ./anaconda-ks.cfg
0       2022-07-14 11:45        ./.cache/mesa_shader_cache/index
0       2022-07-14 11:45        ./.cache/mesa_shader_cache
4,0K    2022-07-14 11:45        ./.cache/dconf/user
4,0K    2022-07-14 11:45        ./.cache/dconf
4,0K    2022-07-14 11:45        ./.cache
4,0K    2022-07-14 11:45        ./.dbus/session-bus/18d2c1076016418a810e68c9b06233b8-9
4,0K    2022-07-14 11:45        ./.dbus/session-bus
4,0K    2022-07-14 11:45        ./.dbus
0       2022-07-14 11:45        ./.config/ibus/bus
0       2022-07-14 11:45        ./.config/ibus
0       2022-07-14 12:02        ./.config/procps
0       2022-07-14 12:02        ./.config
4,0K    2022-07-14 11:45        ./initial-setup-ks.cfg
4,0K    2022-07-14 16:14        ./.bash_history
0       2022-07-14 12:12        ./.local/share/ibus-typing-booster/data
0       2022-07-14 12:12        ./.local/share/ibus-typing-booster
0       2022-07-14 12:12        ./.local/share
0       2022-07-14 12:12        ./.local
4,0K    2022-07-14 12:13        ./.viminfo
4,0K    2022-08-07 12:13        ./esempio.txt
48K     2022-08-07 12:13        .

Con in flag -x o –exclude si possono escludere alcune tipologie di file dal conteggio totale. Escludendo ad esempio i file TXT si ottiene questo

[root@101 ~]# du -ah --exclude="*.txt"
4,0K    ./.bash_logout
4,0K    ./.bash_profile
4,0K    ./.bashrc
4,0K    ./.cshrc
4,0K    ./.tcshrc
4,0K    ./anaconda-ks.cfg
0       ./.cache/mesa_shader_cache/index
0       ./.cache/mesa_shader_cache
4,0K    ./.cache/dconf/user
4,0K    ./.cache/dconf
4,0K    ./.cache
4,0K    ./.dbus/session-bus/18d2c1076016418a810e68c9b06233b8-9
4,0K    ./.dbus/session-bus
4,0K    ./.dbus
0       ./.config/ibus/bus
0       ./.config/ibus
0       ./.config/procps
0       ./.config
4,0K    ./initial-setup-ks.cfg
4,0K    ./.bash_history
0       ./.local/share/ibus-typing-booster/data
0       ./.local/share/ibus-typing-booster
0       ./.local/share
0       ./.local
4,0K    ./.viminfo
44K     .

Con il flag -k si ottiene il risultato in kb delle cartelle

[root@101 ~]# du -k
0       ./.cache/mesa_shader_cache
4       ./.cache/dconf
4       ./.cache
4       ./.dbus/session-bus
4       ./.dbus
0       ./.config/ibus/bus
0       ./.config/ibus
0       ./.config/procps
0       ./.config
0       ./.local/share/ibus-typing-booster/data
0       ./.local/share/ibus-typing-booster
0       ./.local/share
0       ./.local
48      .

Con la combinazione dei flag -a e -k si può ottenere la lista anche dei file

[root@101 ~]# du -ak
4       ./.bash_logout
4       ./.bash_profile
4       ./.bashrc
4       ./.cshrc
4       ./.tcshrc
4       ./anaconda-ks.cfg
0       ./.cache/mesa_shader_cache/index
0       ./.cache/mesa_shader_cache
4       ./.cache/dconf/user
4       ./.cache/dconf
4       ./.cache
4       ./.dbus/session-bus/18d2c1076016418a810e68c9b06233b8-9
4       ./.dbus/session-bus
4       ./.dbus
0       ./.config/ibus/bus
0       ./.config/ibus
0       ./.config/procps
0       ./.config
4       ./initial-setup-ks.cfg
4       ./.bash_history
0       ./.local/share/ibus-typing-booster/data
0       ./.local/share/ibus-typing-booster
0       ./.local/share
0       ./.local
4       ./.viminfo
4       ./esempio.txt
48      .

Se si vuole invece solo la sintesi dello spazio occupato si può usare i flag -s e -k

[root@101 ~]# du -sk
48

Utilizzando il flag -m si può ottenere il risultato in MB, combinato con il flag -h è maggiormente leggibile

[root@101 log]# du -mh
0       ./private
0       ./samba/old
0       ./samba
40M     ./audit
0       ./glusterfs
0       ./chrony
0       ./speech-dispatcher
0       ./libvirt/qemu
0       ./libvirt
0       ./swtpm/libvirt/qemu
0       ./swtpm/libvirt
0       ./swtpm
284K    ./sssd
12K     ./cups
0       ./gdm
12K     ./tuned
0       ./qemu-ga
6,0M    ./anaconda
163M    .