GNU/Linux >> LINUX-Kenntnisse >  >> Linux

du -x untersucht immer noch gemountete Dateisysteme, wenn Platzhalter verwendet werden

Sie können das immer noch mit mountpoint filtern (sofern auf Ihrem System verfügbar):

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

Wenn mountpoint ist nicht verfügbar, aber stat ist (während stat ist immer noch nicht POSIX, es kann häufiger vorkommen), müssen Sie den stat vergleichen manuell ausgeben:

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

Ich glaube du hast recht. Sie sagen eigentlich du /dev , du /sys , du /usr , du /home daher ist die Option "-x" bedeutungslos.

Warum schleifst du nicht darüber? Z.B. find / -maxdepth 1 | egrep -v home|media listet alle Verzeichnisse außer home und media auf. Dann können Sie die Ausgabe an while weiterleiten Schleife zu du es.

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

Linux
  1. Nachteil bei der Verwendung eines Chroot im High Performance Computing?

  2. Warum wird bei der Verwendung von Anführungszeichen ein einzelner umgekehrter Schrägstrich angezeigt?

  3. Mtime einer bestimmten Datei mit Bash abrufen?

  4. Wie führe ich mehrere Befehle aus, wenn ich find verwende?

  5. Befehl bei Verwendung von sudo nicht gefunden

Linux findmnt Befehl zum Suchen von gemounteten Dateisystemen

So listen Sie Dateisysteme in Linux mit Lfs auf

Format von Cookies bei Verwendung von Wget?

Linux Oom zufällig, wenn noch freier Speicher vorhanden ist?

Findmnt - Bessere Möglichkeit, gemountete Dateisysteme unter Linux zu finden

Antworten Sie automatisch mit „Ja“, wenn Sie apt-get install verwenden