Настя и сборник весёлых историй
Оглавление:
- Найти большие файлы с помощью команды
find
- Найти большие файлы и каталоги с помощью команды
du
- Вывод
Со временем ваш диск может загромождаться большим количеством ненужных файлов, занимающих много места на диске. Обычно в системах Linux не хватает места на диске из-за больших файлов журнала или резервных копий.
В этом руководстве объясняется, как найти самые большие файлы и каталоги в системах Linux с помощью команд
find
и
du
.
Найти большие файлы с помощью команды
find
Команда
find
является одним из самых мощных инструментов в арсенале системных администраторов Linux. Это позволяет вам искать файлы и каталоги на основе различных критериев, включая размер файла.
Например, если вы хотите искать файлы размером более 100 МБ, в текущем рабочем каталоге вы должны использовать следующую команду:
sudo find. -xdev -type f -size +100M
Заменить с путем к каталогу, где вы хотите искать самые большие файлы.
Вывод покажет список файлов без дополнительной информации.
/var/lib/libvirt/images/centos-7-desktop_default.img /var/lib/libvirt/images/bionic64_default.img /var/lib/libvirt/images/win10.qcow2 /var/lib/libvirt/images/debian-9_default.img /var/lib/libvirt/images/ubuntu-18-04-desktop_default.img /var/lib/libvirt/images/centos-7_default.img
Команда
find
также может использоваться в сочетании с другими инструментами, такими как
ls
или
sort
для выполнения операций с этими файлами.
В приведенном ниже примере мы передаем выходные данные команды
find
в
ls
которая распечатает размер каждого найденного файла, а затем передаст эти выходные данные команде
sort
чтобы отсортировать их по 5-му столбцу, который является размером файла.
find. -xdev -type f -size +100M -print | xargs ls -lh | sort -k5, 5 -h -r
Вывод будет выглядеть примерно так:
-rw------- 1 root root 40967M Jan 5 14:12 /var/lib/libvirt/images/win10.qcow2 -rw------- 1 root root 3725M Jan 7 22:12 /var/lib/libvirt/images/debian-9_default.img -rw------- 1 root root 1524M Dec 30 07:46 /var/lib/libvirt/images/centos-7-desktop_default.img -rw------- 1 root root 999M Jan 5 14:43 /var/lib/libvirt/images/ubuntu-18-04-desktop_default.img -rw------- 1 root root 562M Dec 31 07:38 /var/lib/libvirt/images/centos-7_default.img -rw------- 1 root root 378M Jan 7 22:26 /var/lib/libvirt/images/bionic64_default.img
Если вывод содержит много строк информации, вы можете использовать команду
head
для печати только первых 10 строк:
find. -xdev -type f -size +100M -print | xargs ls -lh | sort -k5, 5 -h -r | head
Давайте разберем команду:
-
find. -xdev -type f -size +100M -print
find. -xdev -type f -size +100M -print
- искать только файлы (-type f
) в текущем рабочем каталоге (.
), размером более 100 МБ (-size +100M
), не спускать каталоги в других файловых системах (-xdev
) и напечатайте полное имя файла на стандартном выводе, а затем новую строку (-print
).xargs ls -lh
- выходные данные командыfind
xargs
вxargs
который выполняет командуls -lh
, которая выводит выходные данные в длинном листинговом формате,ls -lh
человеку.sort -k5, 5 -h -r
- сортировка строк на основе 5-го столбца (-k5, 5
), сравнение значений в удобочитаемом формате (-h
) и обратный результат (-r
).head
: печатает только первые 10 строк конвейерного вывода.
Команда
find
поставляется с множеством мощных опций. Например, вы можете искать большие файлы старше x дней, большие файлы с определенным расширением или большие файлы, принадлежащие конкретному пользователю.
Найти большие файлы и каталоги с помощью команды
du
Команда
du
используется для оценки использования файлового пространства и особенно полезна для поиска каталогов и файлов, которые занимают много места на диске.
Следующая команда напечатает самые большие файлы и каталоги:
du -ahx. | sort -rh | head -5
Первый столбец содержит размер файла, а второй - имя файла:
55G. 24G./.vagrant.d/boxes 24G./.vagrant.d 13G./Projects 5.2G./.minikube
Объяснение команды:
-
du -ahx.
: оценить использование дискового пространства в текущем рабочем каталоге (.
), подсчитать как файлы, так и каталоги (a
), размеры печати в удобочитаемом формате (h
) и пропустить каталоги в разных файловых системах (x
).sort -rh
: сортировка строк путем сравнения значений в удобочитаемом формате (-h
) и обратный результат (-r
).head -5
: печатает только первые 5 строк конвейерного вывода.
Команда
du
включает в себя другие параметры, которые можно использовать для уточнения вывода использования дискового пространства.
Вывод
Поиск больших файлов очень полезен, когда ваш диск заполнен, и вы хотите освободить его.
Теперь, когда вы нашли самые большие файлы в своей системе, вы можете прочитать наше руководство о том, как удалять файлы и каталоги с помощью командной строки Linux.
найти дисковый терминалКак найти большие письма в Gmail с помощью поиска большой почты
Узнайте, как найти большие письма в Gmail с помощью Find Big Mail.
Найти, удалить большие файлы на жестком диске Windows с Windirstat
Вот как найти и удалить большие файлы на жестком диске Windows с WinDirStat.
Как найти файлы в Linux с помощью командной строки
Команда find является одним из самых мощных инструментов в арсенале системных администраторов Linux. Он ищет файлы и каталоги в иерархии каталогов на основе заданного пользователем выражения и может выполнять заданные пользователем действия для каждого соответствующего файла.