Исключение скрытых файлов из вывода команды du с помощью --exclude, grep -v или sed

Я пытаюсь проверить с помощью инструмента "Использование диска" размер папок моего домашнего каталога, но он также печатает папки и файлы, начиная с точки.

Я не могу отфильтровать их.

du -h --exclude="?"
du -h | grep -v "?"
du -h | grep -ve "?"
du -h | sed "?"

Заранее спасибо.

edit> Спасибо SiegeX за ваш ответ.

du -h --max-depth=1 | grep -v "./\\."

Поскольку точка соответствует любому символу, мы должны поставить перед ним двойной обратный слеш, так как он также является специальным символом.

2 ответа

Решение

Если работает du без указания пути (текущий каталог), используйте это:

du -h --exclude "./.*"

Отduруководство (Используйтеman duчтобы посмотреть инструкцию):

      -I mask files and directories matching the specified mask.

В вашем случае эта команда должна работать при выполнении по нужному пути.

      du -h -I [^.]*
Другие вопросы по тегам