Исключая папки при выполнении дю

2267
EastsideDeveloper

Я пытаюсь использовать, duчтобы получить список файлов / размеров в файловой системе (делая это как sudo):

cd / du --exclude-from="/home" 

и я получаю сообщение об ошибке, сообщающее, что /homeэто папка.

Я не хочу, /homeчтобы меня включили. Просматривая duруководство, не похоже, что это возможно. Какая альтернатива duдля достижения того, чего я хочу?

0

1 ответ на вопрос

2
AFH

Две вещи не так с вашей командой: -

  • Вы не можете комбинировать cdс другой командой, если не добавляете ;между ними, например cd /; du ..., хотя было бы лучше просто указать /как позиционный параметр для du, как в du ... /.
  • В --exclude-fromуказывает файл, содержащий список шаблонов поиска: то, что вам нужно это --excludeуказать шаблон в режиме реального времени .

Итак, команда, которая вам нужна:

du --exclude=/home / 

Это исключит /homeи все его подкаталоги. Обратите внимание, что du --exclude="/home/* /будут исключены все файлы и подкаталоги, но будет указан размер самого /homeкаталога.

Мой первый комментарий был основан на команде, как было первоначально видно, но после редактирования Камиля Мачоровского я вижу, что это была ошибка в форматировании вопроса. AFH 7 лет назад 0
Я не пытался объединить CD с другой командой. Это две отдельные команды, я пытался показать, что я переключился в корневую папку. Ваша рекомендация работает. Я пробовал ту же команду, но с пробелом и / в конце, и она не работала EastsideDeveloper 7 лет назад 0
Что вы подразумеваете под "не работал"? Разве это не сканирование корневого каталога? Разве это не исключая `/ home`? Это, безусловно, работает для меня, как и должно, хотя мне нужно было добавить `-x`, чтобы остановить сканирование удаленных файловых систем. AFH 7 лет назад 0

Похожие вопросы