du
и df
хороши, но я не знаю, как фильтровать данные, которые они предоставляют, как я это делаю с SequoiaView. Я хотел бы знать, какие самые большие папки и самые большие файлы с первого взгляда.
7 ответов
Вы также можете попробовать использовать NCurses Disk Usage aka ncdu
.
Используйте его как ncdu -x -q
если вы вызываете его удаленно (например, через ssh
), и ncdu -x
противном случае.
ncdu 1.6 ~ Use the arrow keys to navigate, press ? for help
--- /home/geek -----------------------------------------------------------------
27.6MiB /qm test 1 rework
312.0kiB /sidebar
88.0kiB /rackerhacker-MySQLTuner-perl-6add618
8.0kiB /.w3m
4.0kiB /.cache
e 4.0kiB /.ssh
160.0kiB ng.tar.gz
76.0kiB plowshare_1~svn1673-1_all.deb
4.0kiB .bashrc
4.0kiB .bash_history
4.0kiB .profile
4.0kiB .htoprc
4.0kiB .bash_logout
0.0 B .lesshst
Это доступно и в Mac OS X.
Следующие флаги для командной строки могут быть полезны:
-q Quiet mode, doesn't update the screen 10 times a second
while scanning, reduces network bandwidth used
-x Don't cross filesystem borders (don't descend into a
directory which is a mounted disk)
Спасибо Сорину Сбарнеа.
Используйте некоторую комбинацию команд и опций:
du --max-depth=1 2> /dev/null | sort -n -r | head -n20
просматривать только самые большие. Если вы хотите часто его использовать, то свяжите его с псевдонимом, например, в bash, добавив в ~/.bashrc
alias largest='du --max-depth=1 2> /dev/null | sort -n -r | head -n20'
Я обычно использую
du -hsc * | sort -h
Что означает каждый вариант для du
:
- h: показать размеры в удобочитаемом формате (1K, 1M, 1G, ...)
- s: резюмировать: отображать только сумму для каждого аргумента
- c: также отображать итоговую сумму
Опция -h
для sort
позволяет понять формат -h
(удобочитаемый) для du
. Эта опция является относительно новой в sort
, поэтому, возможно, ваша система не поддерживает ее и вынуждает вас использовать du -sc | sort -n
вместо.
Если вы делаете это на удаленной машине, а процесс занимает много времени, вы, вероятно, захотите выполнить этот процесс в фоновом режиме или внутри screen
или чего-то подобного, чтобы предотвратить потерю соединения.
Я хотел бы порекомендовать Dutree, который предлагает иерархическую визуализацию.
Вы можете выбрать более или менее уровни детализации и исключить пути для лучшего контроля визуализации. Вы также можете сравнить разные пути.
Это реализовано в Rust, быстро и эффективно.
$ dutree -h
Usage: dutree [options] <path> [<path>..]
Options:
-d, --depth [DEPTH] show directories up to depth N (def 1)
-a, --aggr [N[KMG]] aggregate smaller than N B/KiB/MiB/GiB (def 1M)
-s, --summary equivalent to -da, or -d1 -a1M
-u, --usage report real disk usage instead of file size
-b, --bytes print sizes in bytes
-f, --files-only skip directories for a fast local overview
-x, --exclude NAME exclude matching files or directories
-H, --no-hidden exclude hidden files
-A, --ascii ASCII characters only, no colors
-h, --help show help
-v, --version print version number
du -h 2> /dev/null | sort -hr | head -n20
du -h дает удобочитаемую оценку списка дискового пространства с общим итогом
2> /dev /null подавляет любые ошибки, такие как отказ в доступе на чтение
sort -hr сортирует читаемый человеком размер файла в обратном порядке
руководитель -n20 сократить список до 20
Имейте в виду, что каталоги и файлы, в которых запрещен доступ для чтения, исключены
Чтобы сразу узнать, какие папки являются самыми большими и самыми большими, вы также можете использовать инструмент командной строки «Top Disk Usage» (tdu
):