Я хочу оценить объем дискового пространства, используемого каталогом, используя следующую команду.
du -sh dir_name
который не рассчитывает скрытые каталоги. На странице руководства du нет информации об этом. Как рассчитать объем дискового пространства, используемого каталогами, включая скрытые файлы.
... you maybe using "du *" ?
Эта команда показывает вам суммарный размер скрытых каталогов
du -hs .[^.]*
источник
Правильная команда:
du -hs $(ls -A)
du -hs .* *
Как уже упоминалось в другом ответе, это не правильно, если вы хотите перечислить все файлы и подкаталоги (включая скрытые).Пример :
Почему так
du
себя ведет? Потому что вы используете,-s
чтобы суммировать результат и что все файлы и подкаталоги являются потомками,.
поэтомуdu -hs
не перечисляет их!источник
К вашему сведению, для оценки размера, занимаемого различными каталогами, гораздо лучше использовать ncdu
Вы можете перемещаться в графическом интерфейсе ncurses между различными каталогами, и он покажет размер каждого каталога. Если я использую du, мне придется выполнять команду du для каждого каталога, который я хочу проверить, что может быть громоздким. Вы можете отсортировать каталоги по размеру, занимаемому в графическом интерфейсе ncurses.
источник
du
. Помимо более изящного метода отображения, нет никаких очевидных признаков каких-либо функциональных различий.d
привязку для удаления каталогов, так что вы можете очистить непосредственно из интерфейса.Это делает, и это не так. Пример:
В домашнем каталоге: (существует только один пользователь)
в пользовательском каталоге: (огромная разница между суммами)
и причина в том, что:
du
будет вычислять скрытые каталоги при спуске в подкаталоги, но в текущем каталоге * просто не соответствует шаблону .directory_name, поэтому скрытые элементы текущего каталога будут опущены.Мне потребовалось некоторое время, чтобы понять, и, как рекомендует шадьябхи, это было бы очевидно, если бы я использовал ncdu.
источник
Правильная команда:
du -hs .* *
источник
find -maxdepth 1 -exec du -sh "{}" \; | sort -h
Это дает вам:
Он также сортирует выходные данные, чтобы было легче увидеть, что является самым большим. Я также сделал это псевдоним в моем
~/.bash_aliases
файле.Теперь я могу просто выполнить
big
поиск, чтобы найти самые большие каталоги в каталоге иsbig
когда мне нужны разрешения sudo.источник
Ниже приводится описание
-d
опции вdu --help
:источник
Эта команда поможет вам проверить использование диска, попасть в каталог и выполнить следующее.
"du -sch. [!.] * * | sort -h"
Вот демонстрация того, как рассчитать использование диска для определенного каталога. Я создал каталог с именем Du_sh и создал два файла (один скрытый 10 МБ и обычный 20 МБ) внутри.
nikhil@debian:~$ mkdir Du_sh nikhil@debian:~$ cd Du_sh/ nikhil@debian:~/Du_sh$ dd if=/dev/zero of=.10MB bs=1024 count=10240 10240+0 records in 10240+0 records out 10485760 bytes (10 MB, 10 MiB) copied, 0.0299941 s, 350 MB/s nikhil@debian:~/Du_sh$ nikhil@debian:~/Du_sh$ dd if=/dev/zero of=20MB bs=2048 count=10240 10240+0 records in 10240+0 records out 20971520 bytes (21 MB, 20 MiB) copied, 0.0342258 s, 613 MB/s nikhil@debian:~/Du_sh$ du -sch .[!.]* * 10M .10MB 20M 20MB 30M total nikhil@debian:~/Du_sh$ du -sch .[!.]* * | sort -h 10M .10MB 20M 20MB 30M total nikhil@debian:~/Du_sh$
источник