GNU/Linux >> Linux Esercitazione >  >> Linux

du -x esamina ancora i filesystem montati quando si usano i caratteri jolly

Puoi ancora filtrarlo usando mountpoint (se disponibile sul tuo sistema):

for a in /*; do mountpoint -q -- "$a" || du -s -h -x "$a"; done

Se mountpoint non è disponibile ma stat è (mentre stat non è ancora POSIX, potrebbe essere più comune), dovrai confrontare il stat output manualmente:

rootdevice="$(stat -c %D /)"
for a in /*; do [ "$rootdevice" = "$(stat -c %D -- "$a")" ] && du -s -h -x "$a"; done

Credo tu abbia ragione. In realtà stai dicendo du /dev , du /sys , du /usr , du /home quindi l'opzione "-x" non ha senso.

Perché non ci giri sopra? Per esempio. find / -maxdepth 1 | egrep -v home|media elencherà tutte le directory tranne home e media. Quindi puoi reindirizzare l'output a un while passa a du esso.

find / -maxdepth 1 | egrep -v home|media | while read f; do
  du -s -h -x "$f"; 
done

Linux
  1. 10 esempi pratici che utilizzano caratteri jolly per abbinare i nomi di file in Linux

  2. Utilizzo di un DNS secondario quando la ricerca non riesce in primario?

  3. Perché viene mostrata una singola barra rovesciata quando si utilizzano le virgolette?

  4. Ottieni mtime di un file specifico usando Bash?

  5. posizione del file temporaneo quando si utilizza tmpfile() in C

Comando Linux findmnt per trovare i filesystem montati

Come elencare i filesystem in Linux usando Lfs

Linux Oom in modo casuale quando c'è ancora memoria libera?

Findmnt - Un modo migliore per trovare filesystem montati su Linux

Rispondi automaticamente "Sì" quando usi apt-get install

Quando viene cancellato /tmp?