У меня есть несколько ситуаций, в которых я ничего не вижу на страницах du man.
1) Я хочу видеть файлы в подкаталоге, размер которых превышает определенный размер. 2) Я использую du -sh> du_output.txt. Я вижу вывод, как описано для опций -s и -h, но меня больше интересует, если вывод идет в формате, который, например,
dir0--->dir1-->dir3-->dir4
| |
->dir2 |-file1
|-file2
Если это макет каталога, и я хочу просто увидеть размер отдельных каталогов во всех подкаталогах, то что я могу сделать (глубина каждого подкаталога является переменной)
Чтобы отображать только папки размером более 1 ГБ:
du -h --threshold=1G
Вы также можете заказать по размеру, чтобы легко найти самые большие.
du -h --threshold=1G | sort -h
(Работает на: Ubuntu / Mint.
Не работает на: OSX или RHEL 6.2)
Вместо этого используйте команду поиска. В следующем примере будут показаны все файлы размером более 10 мегабайт:
find -size +10M
Вы можете использовать du с find следующим образом, чтобы увидеть размер каждого файла:
find -size +10M -exec du -sh {} \;
я люблю gt5 утилита. Он использует вывод du
и создает доступный для просмотра список каталогов и их размеров и использует браузер в текстовом режиме, например ссылки для отображения информации.
Обе программы доступны в репозиториях Ubuntu: gt5 и ссылки.
find /path/to/folder -size +100k
Неясно, хотите ли вы увидеть размер отдельных файлов, которые больше некоторого значения, или вы хотите увидеть папки больше некоторого значения.
Я считаю, что ответ Mtl Dev подходит на этот вопрос. Поскольку Бонд открыл эту ветку с тегами «linux» и «ubuntu-10.04».
Очередной раз, du -h --threshold=1G
(с последующим | sort -h
опционально) отлично работает в Ubuntu.
Хотя Бонд сказал, что
Я не вижу ничего на страницах du man.
На странице руководства есть две строки, см. ниже.
-t, --threshold = РАЗМЕР
исключить записи меньше SIZE, если положительные, или записи больше SIZE, если отрицательные
Еще одна вещь, я думаю, точная командная строка, которую хочет Бонд, выглядит примерно так:
find . -mindepth 2 -type d | xargs du -sh -t 1G
когда -mindepth 1
утверждает, что он должен содержать текущий путь, -mindepth 2
буду работать по вашему запросу.
Ниже представлена демонстрация популярного набора данных. Лиза.
~/dataset/lisa $ find . -mindepth 2 -type d | xargs du -sh -t 1G | sort -h
1.2G ./aiua120306-0/frameAnnotations-DataLog02142012_002_external_camera.avi_annotations
1.7G ./aiua120306-1/frameAnnotations-DataLog02142012_003_external_camera.avi_annotations
4.0G ./negatives/negativePics
6.0G ./experiments/training
~/dataset/lisa $ find . -mindepth 2 -type d | xargs du -sh -t 1G
4.0G ./negatives/negativePics
1.2G ./aiua120306-0/frameAnnotations-DataLog02142012_002_external_camera.avi_annotations
6.0G ./experiments/training
1.7G ./aiua120306-1/frameAnnotations-DataLog02142012_003_external_camera.avi_annotations
~/dataset/lisa $ find . -mindepth 2 -type d | xargs du -sh -t 3G
4.0G ./negatives/negativePics
6.0G ./experiments/training