Как ограничить вывод du для конкретного пользователя?

Мне нужно помочь конкретному пользователю, скажем Алисе, освободить место на диске; но не все файлы пользователя находятся в его домашнем каталоге; многие из них находятся в каталогах, которыми пользуются другие пользователи. Я хотел бы иметь что-то вроде вывода

du -sh *

но ограничено файлами, которые принадлежат только этому пользователю. То есть что-то вроде

du -sh --ignore-all-users-except=alice *

Так, например, если в текущем каталоге есть три каталога, a, b а также cЯ хотел бы видеть вывод, такой как следующее:

1.3G   a
416K   b
80K    c

Это означает, что Алиса использует 1.3G внутри a, 416К внутри b, и так далее.

Есть ли какая-нибудь утилита, которая может дать мне такую ​​информацию, или мне нужен скрипт?

2 ответа

find / -user alice -print0 | du -ch --files0-from=-

Я думаю, что это будет делать.

find . -user alice -type f -exec du -h {} +

Обновление: вы можете проверить ответы здесь

Другие вопросы по тегам