ncdu
Ncurses du
Эта удивительная утилита CLI позволяет легко находить большие файлы и каталоги в интерактивном режиме.
Например, из дерева известного проекта мы делаем:
sudo apt-get install ncdu
ncdu
Итог свой:
Затем я вхожу вниз и вправо на клавиатуре, чтобы перейти в /drivers
папку, и я вижу:
ncdu
только рекурсивно вычисляет размеры файлов один раз при запуске для всего дерева, так что это эффективно.
«Общее использование диска» и «Кажущийся размер» аналогичны du
, и я объяснил это: почему вывод `du` часто так сильно отличается от` du -b`
Домашняя страница проекта: https://dev.yorhel.nl/ncdu
Смежные вопросы:
Проверено в Ubuntu 16.04.
ncdu
неинтерактивное использование
Еще одна крутая особенность ncdu
заключается в том, что вы можете сначала выгружать размеры в формате JSON, а затем снова использовать их.
Например, чтобы сгенерировать файл, запустите:
ncdu -o ncdu.json
а затем изучить его в интерактивном режиме с:
ncdu -f ncdu.json
Это очень полезно, если вы имеете дело с очень большой и медленной файловой системой, такой как NFS.
Таким образом, вы можете сначала экспортировать только один раз, что может занять несколько часов, а затем исследовать файлы, выйти, снова исследовать и т. Д.
Выходной формат - просто JSON, поэтому его легко использовать и в других программах, например:
ncdu -o - | python -m json.tool | less
раскрывает простую структуру данных дерева каталогов:
[
1,
0,
{
"progname": "ncdu",
"progver": "1.12",
"timestamp": 1562151680
},
[
{
"asize": 4096,
"dev": 2065,
"dsize": 4096,
"ino": 9838037,
"name": "/work/linux-kernel-module-cheat/submodules/linux"
},
{
"asize": 1513,
"dsize": 4096,
"ino": 9856660,
"name": "Kbuild"
},
[
{
"asize": 4096,
"dsize": 4096,
"ino": 10101519,
"name": "net"
},
[
{
"asize": 4096,
"dsize": 4096,
"ino": 11417591,
"name": "l2tp"
},
{
"asize": 48173,
"dsize": 49152,
"ino": 11418744,
"name": "l2tp_core.c"
},
Проверено в Ubuntu 18.04.