Stále to můžete filtrovat pomocí mountpoint
(pokud je ve vašem systému k dispozici):
for a in /*; do mountpoint -q -- "$a" || du -s -h -x "$a"; done
Pokud mountpoint
není k dispozici, ale stat
je (zatímco stat
stále není POSIX, může být běžnější), budete muset porovnat stat
výstup ručně:
rootdevice="$(stat -c %D /)"
for a in /*; do [ "$rootdevice" = "$(stat -c %D -- "$a")" ] && du -s -h -x "$a"; done
Myslím, že máš pravdu. Ve skutečnosti říkáte du /dev
, du /sys
, du /usr
, du /home
takže volba "-x" nemá smysl.
Proč to nepřehlédneš? Např. find / -maxdepth 1 | egrep -v home|media
zobrazí všechny adresáře kromě domovů a médií. Potom můžete výstup převést do while
smyčka na du
to.
find / -maxdepth 1 | egrep -v home|media | while read f; do
du -s -h -x "$f";
done
Čas aktualizace:ntpdate[3108]:soket NTP se používá, ukončuje se
getent passwd vypisuje pouze místní uživatele