GNU/Linux >> Tutoriels Linux >  >> Linux

du -x examine toujours les systèmes de fichiers montés lors de l'utilisation de caractères génériques

Vous pouvez toujours filtrer cela en utilisant mountpoint (si disponible sur votre système) :

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

Si mountpoint n'est pas disponible mais stat est (tandis que stat n'est toujours pas POSIX, c'est peut-être plus courant), vous devrez comparer le stat sortie manuellement :

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

Je suppose que tu as raison. Vous dites en fait du /dev , du /sys , du /usr , du /home donc l'option "-x" n'a pas de sens.

Pourquoi ne pas boucler dessus ? Par exemple. find / -maxdepth 1 | egrep -v home|media listera tous les répertoires sauf home et media. Ensuite, vous pouvez diriger la sortie vers un while boucle vers du il.

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

Linux
  1. Format des cookies lors de l'utilisation de Wget ?

  2. Pourquoi une seule barre oblique inversée s'affiche-t-elle lors de l'utilisation de guillemets ?

  3. commande introuvable lors de l'utilisation de sudo

  4. Utilisation de / lors de l'utilisation d'un cd

  5. REJECT vs DROP lors de l'utilisation d'iptables

Commande Linux findmnt pour rechercher des systèmes de fichiers montés

Comment lister les systèmes de fichiers sous Linux à l'aide de Lfs

Linux Oom au hasard alors qu'il y a encore de la mémoire libre ?

Findmnt - Meilleur moyen de trouver des systèmes de fichiers montés sur Linux

Répondre automatiquement "Oui" lors de l'utilisation d'apt-get install

Quand /tmp est-il effacé ?