SLUSAR.SU
Логово Программиста
Как посмотреть размер папок и файлов в консоли Linux
Привет, сегодня хочу рассказать о том, как же, все-таки, из консоли или по удаленке через ssh узнать размер папок или файлов linux.
Именно с такой задачей столкнулся, когда нужно было посмотреть, кто же больше всех занимает места в корпоративном файлхранилище.
Данная операция может быть ресурсоёмкой при большом количестве файлов. И чтобы не заморачиваться, приведу примеры со своей рабочей машины.
и в этом нам поможет замечательная команда du.
Смотрим размер моей рабочей папки на диске home:
Если набрать просто du или du -h, то на терменал выведутся рамеры всех вложенных папок и файлов. Так что так лучше не делать.
Если нужно узнать размеры всего содержимого в каталоге, тогда заходим в него и выполняем следующую команду:
Самвол * означает, что нужно выбрать все файлы в папке.
Сортируем папки по размеру:
du -s *| sort -nr — Покажет все файлы в килобайтах и отсортирует от большего к меньшему.
du -sm *| sort -nr -Покажет все файлы в мегабайтах и отсортирует от большего к меньшему.
du -s *|sort -nr|cut -f 2-|while read a;do du -hs $a;done — А данная кострукция поможет отсортировать файлы от большего к меньшему и прописать размеры в мегабайтах и килобайтах:
10 идей о “ Как посмотреть размер папок и файлов в консоли Linux ”
А почему нельзя было использовать просто команду ls вместо du ?
Например команда ls -l -S выведет содержимое директория в отсортированном виде от большего к меньшему по размеру и имени (вместе с директориями и размером содержимого). Так же есть общий размер текущей директории и входящих в неё.
Дополним параметром -h и размер будет показан как в байтах, Кбайтах и Мбайтах, если таковые имеются. ls -l -S -h
Ну а если добавить еще параметр -R тогда будет подробно покеазан каждый поддиректорий начиная с текущего. ls -l -S -h -R
я просто показала еще один способ. Каким пользоваться, решай сам
«А почему нельзя было использовать просто команду ls вместо du ?» — Совершенно разное назначение, ls — не показывает размер папки, только 4Кб как это делает обычный менеджер файлов. Если надо знать какая папка сколько жрет места, чтобы найти причину уменьшения свободного места, то только du
Привет Админ.
Есть и такой способ:
du -h —max-depth=1
Удобнее -s тем, что общий размер так же выводит.
Так же можно с сортировкой выводить как в твоих примерах.
Вы правы. Если найдете еще способ, буду рад.
sisadmin@sisadmin-linux пишет нет такой команды
$ du -s *| sort -nr
sisadmin@sisadmin-linux: команда не найдена
kkk@333
$ /home du -sm *| sort -nr
bash: /home: Это каталог
kkk@333
$ /home $ du -sm *| sort -nr
bash: /home: Это каталог
du -s * | sort -nr | cut -f 2- | while read a; do du -hs $a; done
$a нужно взять в кавычки, чтобы не было проблем с пробелами в путях.
Михаил, копируйте команды, а не вывод консоли:
du -s *| sort -nr
Спасибо admin и Вячеслав, самая удобная команда:
du -s * | sort -nr | cut -f 2- | while read a; do du -hs «$a»; done
в моем комменте выше важно $a взять в вертикальные двойные кавычки, а не такие, как я указал выше.
Админ, а лучше исправьте их в комменте выше, а этот коммент удалите.
Добавить комментарий Отменить ответ
Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.
Узнаем размер папки в Linux
Зная о системе максимум информации, пользователь сможет легче определять все нюансы в ее работе. Немаловажным является знание сведений о размере папок в Linux, но для начала нужно определиться, каким способом для получения этих данных пользоваться.
Способы определения размера папки
Пользователи операционных систем на базе Linux знают, что большинство действий в них решаются несколькими способами. Так и в случае с определением размера папки. Такая, на первый взгляд, тривиальная задача может ввести в ступор «новичка», но инструкция, которая будет приведена ниже, поможет во всем детально разобраться.
Способ 1: Терминал
Чтобы получить подробнейшую информацию о размере папок в Linux, лучше воспользоваться командой du в «Терминале». Хотя данный способ может отпугнуть неопытного пользователя, который только перешел на Linux, он отлично подойдет для выяснения нужной информации.
Синтаксис
Вся структура утилиты du выглядит следующим образом:
du
du название_папки
du [опция] название_папки
Как видно, синтаксис у нее может строиться по-разному. Например, при выполнении команды du (без указания папки и опции) вы получите стену текста с перечислением размеров всех папок в текущей директории, что крайне неудобно для восприятия.
Лучше использовать опции, если вы хотите получить структурированные данные, подробнее о чем будет рассказано ниже.
Опции
Перед демонстрацией наглядных примеров команды du стоит перечислить ее опции, чтобы использовать все возможности при сборе информации о размере папок.
- -а — вывести на экран сведения о суммарном размере файлов, помещенных в каталог (в конце списка указывается суммарный объем всех файлов в папке).
- —apparent-size — показать достоверный объем помещенных внутрь каталогов файлов. Параметры некоторых файлов в папке иногда бывают недействительными, на это влияет множество факторов, так что использование этой опции помогает удостовериться в корректности данных.
- -B, —block-size=РАЗМЕР — перевести полученные результаты в килобайты (K), мегабайты (M), гигабайты (G), терабайты (T). Например, команда с опцией -BM выведет размер папок в мегабайтах. Обратите внимание, что при использовании различных величин их значение имеет погрешность, ввиду округления до меньшего целого числа.
- -b — отображать данные в байтах (равнозначно —apparent-size и —block-size=1).
- -с — показывать общий итог подсчета размера папки.
- -D — приказ проследовать лишь по тем ссылкам, которые указаны в консоли.
- —files0-from=ФАЙЛ — показать отчет по использованию диска, чье имя будет введено вами в графу «ФАЙЛ».
- -H — равнозначен ключу -D.
- -h — перевести все значения в понятный для человека формат, используя соответствующие единицы измерения данных (килобайты, мегабайты, гигабайты и терабайты).
- —si — практически равносильна прошлой опции, за исключением того, что использует делитель, равный одной тысяче.
- -k — отображать данные в килобайтах (то же самое, что и команда —block-size=1000).
- -l — приказ приплюсовывать все данные в том случае, когда есть боле одной сноски на один и тот же объект.
- -m — отображать данные в мегабайтах (аналогично команде —block-size-1000000).
- -L — строго следовать указанным символьным ссылкам.
- -P — аннулирует предыдущую опцию.
- -0 — каждую выводимую строчку информации заканчивать нулевым байтом, а не начинать новую строку.
- -S — при подсчете занятого пространства не учитывать размер самих папок.
- -s — показывать размер лишь той папки, которую вы указали в качестве аргумента.
- -x — не выходить за пределы указанной файловой системы.
- —exclude=ОБРАЗЕЦ — игнорировать все файлы, совпадающие с «Образцом».
- -d — задать глубину следования папкам.
- —time — показать сведения о последних изменениях в файлах.
- —version — уточнить версию утилиты du.
Теперь, зная все опции команды du, вы сможете самостоятельно применять их на практике, осуществляя гибкую настройку сбора информации.
Примеры использования
Напоследок, чтобы закрепить полученную информацию, стоит рассмотреть несколько примеров использования команды du.
Без ввода дополнительных опций утилита будет автоматически выводить имена и размер папок, расположенных по указанному пути, попутно выводя также и подпапки.
Для вывода данных об интересующей вас папке введите ее имя в контекст команды. К примеру:
du /home/user/Загрузки
du /home/user/Изображения
Чтобы было проще воспринимать всю выводимую информацию, воспользуйтесь опцией -h. Она подстроит размер всех папок под общепринятые единицы измерения цифровых данных.
du -h /home/user/Загрузки
du -h /home/user/Изображения
Для полного отчета об объеме, занимаемом определенной папкой, укажите вместе с командой du опцию -s, а после — имя интересующей вас папки.
du -s /home/user/Загрузки
du -s /home/user/Изображения
Но удобнее будет задействовать опции -h и -s вместе.
du -hs /home/user/Загрузки
du -hs /home/user/Изображения
Опция -с применяется для вывода общей суммы, занимаемого папками места (ее можно применить вместе с опциями -h и -s).
du -chs /home/user/Загрузки
du -chs /home/user/Изображения
Еще одна крайне полезная «фишка», о которой не было сказано выше, — это опция —-max-depth. С помощью нее вы сможете задать глубину, с которой утилита du будет следовать папкам. Например, при указанном коэффициенте глубины в одну единицу, будут просмотрены данные о размере всех без исключения папок, указанных в данном отрезке, а папки в них будут проигнорированы.
Выше были приведены самые популярные применения утилиты du. Используя их, вы сможете добиться желаемого результата — узнать размер папки. Если же опций, используемых в примерах, вам покажется мало, то можете самостоятельно разобраться с остальными, применяя их на практике.
Способ 2: Файловый менеджер
Безусловно, «Терминал» способен предоставить просто кладезь информации о размере папок, но рядовому пользователю будет сложно в нем разобраться. Куда привычней наблюдать графический интерфейс, нежели набор символов на темном фоне. В этом случае, если нужно узнать лишь размер одной папки, лучшим вариантом будет воспользоваться файловым менеджером, который установлен в Linux по умолчанию.
Примечание: в статье будет использован файловый менеджер Nautilus, который является стандартным для Ubuntu, однако инструкция будет применима и к другим менеджерам, отличаться может лишь расположение некоторых элементов интерфейса и их отображение.
Чтобы узнать размер папки в Linux с помощью файлового менеджера, выполните следующие действия:
- Откройте менеджер файлов, нажав по иконке на панели задач или проведя поиск по системе.
После проделанных манипуляций перед вами появится окно, в котором нужно отыскать строку «Содержание» (1), напротив нее и будет указан размер папки. Кстати, чуть ниже будет находиться информация об оставшемся свободном месте на диске (2).
Заключение
По итогу вы имеете два способа, с помощью которых можно узнать размер папки в операционных системах на базе Linux. Хоть они и предоставляют одну и туже информацию, варианты ее получения кардинально отличаются. Если вам надо быстро узнать размер одной папки, то идеальным решением будет использование файлового менеджера, а если вам нужно получить как можно больше информации, то отлично подойдет «Терминал» с утилитой du и ее опциями.