Як дізнатися розмір каталогу? Включаючи підкаталоги та файли.
Як дізнатися розмір каталогу? Включаючи підкаталоги та файли.
Відповіді:
du -s directory_name
Або щоб отримати зрозумілий для людини вихід:
du -sh directory_name
Цей -sпараметр означає, що він не буде розміщувати розмір для кожного підкаталогу, а лише загальний розмір.
du -sh bagпрацював ідеально!
Хоча використання окремого пакета, такого як ncdu, може спрацювати, однакове порівняння багатьох папок можна виконати певною мірою, просто надавши списку папок для збільшення розміру. Наприклад, для порівняння каталогів вищого рівня у вашій системі ...
cd /
sudo du -sh ./*
du -sh /*
GNU duприймає -bваріант.
Див. manСторінку та infoсторінку для отримання додаткової довідки:
-b,--bytesеквівалентно--apparent-size --block-size=1
du -csh
-c виробляє велику суму
-cНе має сенсу використовувати разом з -s, НЕ так? -sвідображає лише розмір вказаного каталогу, тобто загальний розмір каталогу.
Ви також можете використовувати ls -ldh:
ls -ldh /etc
drwxr-xr-x 145 root root 12K 2012-06-02 11:44 /etc
-l - для довгого переліку; -d призначений для відображення інформації про dir, а не для вмісту dir, -h - для відображення розміру у читаному для людини форматі.
Я завжди встановлюю пакет "ncdu" і бачу весь вихід усіх каталогів із графічним поданням. Це тому, що мені зазвичай потрібно знати, що займає найбільше дискового простору на моїх машинах, незалежно від того, скільки підсумовує окремий каталог.
Використання: sudo ncdu /(Вам не потрібні sudoпапки, на яких ви прочитали дозвіл).
Пройде певний час для сканування статистики використання диска у всій файловій системі. У ньому є гарне графічне зображення командного рядка та включена навігація по клавіатурі за допомогою клавіш зі стрілками, як-от заглиблюючись у сканований шлях. Ви також можете видалити елементи, натиснувши D.
Ви можете використовувати "file-size.sh" з бібліотеки awk Velor :
ls -ARgo "$@" | awk '{q += $3} END {print q}'
du -hd1
перерахує у читаному для людини форматі розміри всіх каталогів, наприклад
656K ./rubberband
2.2M ./lame
652K ./pkg-config
Я спробував із командою нижче, оскільки вже надана найкраща відповідь
sudo find . -maxdepth 1 -exec du -shk {} \;| awk 'NR >1'| awk 'BEGIN{sum=1}{sum=sum+$1}END{print sum}'
вихід
sudo find . -maxdepth 1 -exec du -shk {} \;| awk 'NR >1'| awk 'BEGIN{sum=1}{sum=sum+$1}END{print sum}'
679445
duодиницею за замовчуванням є 512-байтові блоки відповідно до POSIX та кілобайт на Linux (якщо не встановлена змінна середовищеPOSIXLY_CORRECT) або зdu -k.