- Найти большие файлы в Linux
- Find Large Files in Linux
- Это руководство объясняет, как найти большие файлы и каталоги в системах Linux с использованием find и du команд.
- Найти большие файлы с помощью find команды
- Найти большие файлы и каталоги с помощью du команды
- Вывод
- Поиск больших файлов в Linux
- Найдите большие файлы с помощью команды find
- Найдите большие файлы и каталоги с помощью команды du
- Выводы
- Найти 10 самых больших файлов linux
- Поиск файлов по типу (не путать с расширениями файлов в Windows)
- Поиск файлов с учётом даты модификации другого файла
- Поиск файлов по размеру
- Создать сокращенные команды часто используемых алгоритмов поиска
- Поиск больших файлов и директорий в Linux
- Поиск больших файлов командой find
- Простой поиск
- Вывод подробной информации
- Поиск больших файлов и директорий командой du
Найти большие файлы в Linux
Find Large Files in Linux
Это руководство объясняет, как найти большие файлы и каталоги в системах Linux с использованием find и du команд.
Со временем на вашем диске может появиться много ненужных файлов, которые занимают много места на диске. Обычно в системах Linux не хватает места на диске из-за больших файлов журнала или резервных копий.
Найти большие файлы с помощью find команды
Команда find является одним из самых мощных инструментов в арсенале системных администраторов Linux. Это позволяет вам искать файлы и каталоги на основе различных критериев, включая размер файла.
Например, если вы хотите искать файлы размером более 100 МБ, в текущем рабочем каталоге вы должны использовать следующую команду:
Вывод покажет список файлов без дополнительной информации.
find Команда также может быть использован в сочетании с другими инструментами , такими , как ls и sort для выполнения операций над этими файлами.
В приведенном ниже примере мы передаем выходные данные find команды, в ls которой будет напечатан размер каждого найденного файла, а затем передаем эти выходные данные sort команде, чтобы отсортировать ее по 5-му столбцу, который является размером файла.
Вывод будет выглядеть примерно так:
Если выходные данные содержат много строк информации, вы можете использовать head команду для печати только первых 10 строк:
Давайте разберем команду:
- find . -xdev -type f -size +100M -print — искать только файлы ( -type f ) в текущем рабочем каталоге ( . ), размером более 100 МБ ( -size +100M ), не спускаться в каталоги на других файловых системах ( -xdev ) и печатать полное имя файла в стандартном выводе, за которым следует новая строка ( -print ) ,
- xargs ls -lh — вывод find команды передается по конвейеру, xargs который выполняет ls -lh команду, которая будет печатать вывод в длинном листинговом удобочитаемом формате.
- sort -k5,5 -h -r — сортировка строк на основе 5-го столбца ( -k5,5 ), сравнение значений в удобочитаемом формате ( -h ) и обратный результат ( -r ).
- head : печатает только первые 10 строк конвейерного вывода.
Команда find поставляется с множеством мощных опций. Например, вы можете искать большие файлы старше x дней, большие файлы с определенным расширением или большие файлы, принадлежащие конкретному пользователю.
Найти большие файлы и каталоги с помощью du команды
Команда du используется для оценки использования файлового пространства и особенно полезна для поиска каталогов и файлов, которые занимают много места на диске.
Следующая команда напечатает самые большие файлы и каталоги:
Первый столбец содержит размер файла, а второй — имя файла:
- du -ahx . : оцените использование дискового пространства в текущем рабочем каталоге ( . ), подсчитайте как файлы, так и каталоги ( a ), размеры печати в удобочитаемом формате ( h ) и пропустите каталоги в разных файловых системах ( x ).
- sort -rh : сортировка строк путем сравнения значений в удобочитаемом формате ( -h ) и обратный результат ( -r ).
- head -5 : печатает только первые 5 строк конвейерного вывода.
Команда du включает в себя другие параметры, которые можно использовать для уточнения вывода использования дискового пространства.
Вывод
Теперь, когда вы нашли самые большие файлы в своей системе, вы можете прочитать наше руководство о том, как удалять файлы и каталоги с помощью командной строки Linux .
Источник
Поиск больших файлов в Linux
Со временем на вашем диске может появиться множество ненужных файлов, занимающих много места на диске. Обычно в системах Linux не хватает места на диске из-за больших файлов журналов или резервных копий.
В этом руководстве объясняется, как найти самые большие файлы и каталоги в системах Linux с помощью команд find и du .
Найдите большие файлы с помощью команды find
Команда find — один из самых мощных инструментов в арсенале системных администраторов Linux. Он позволяет искать файлы и каталоги по различным критериям, включая размер файла.
Например, чтобы найти файлы размером более 100 МБ в текущем рабочем каталоге , вы должны выполнить следующую команду:
В результате будет отображен список файлов без дополнительной информации.
Команда find также может использоваться в сочетании с другими инструментами, такими как ls или sort для выполнения операций с этими файлами.
В приведенном ниже примере мы передаем вывод команды find в ls который распечатывает размер каждого найденного файла, а затем передает этот вывод команде sort для сортировки на основе 5-го столбца, который является размером файла.
Результат будет выглядеть примерно так:
Если вывод содержит много строк информации, вы можете использовать команду head для печати только первых 10 строк:
- find . -xdev -type f -size +100M -print — искать только файлы ( -type f ) в текущем рабочем каталоге ( . ), размер которых превышает 100 МБ ( -size +100M ), не переходить по каталогам в других файловых системах ( -xdev ) и вывести на стандартный вывод полное имя файла с новой строкой ( -print ).
- xargs ls -lh — вывод команды find xargs по конвейеру в xargs который выполняет команду ls -lh , которая распечатывает вывод в формате длинного списка, удобном для чтения.
- sort -k5,5 -h -r — отсортировать строки по 5-му столбцу ( -k5,5 ), сравнить значения в удобочитаемом формате ( -h ) и отменить результат ( -r ).
- head : печатает только первые 10 строк вывода.
Команда find имеет множество мощных опций. Например, вы можете искать большие файлы старше x дней, большие файлы с определенным расширением или большие файлы, принадлежащие определенному пользователю.
Найдите большие файлы и каталоги с помощью команды du
Команда du используется для оценки использования файлового пространства и особенно полезна для поиска каталогов и файлов, занимающих большие объемы дискового пространства.
Следующая команда распечатает самые большие файлы и каталоги:
В первом столбце указан размер файла, а во втором — имя файла:
- du -ahx . : оценка использования дискового пространства в текущем рабочем каталоге ( . ), подсчет файлов и каталогов ( a ), размеры печати в удобочитаемом формате ( h ) и пропуск каталогов в разных файловых системах ( x ).
- sort -rh : сортировать строки, сравнивая значения в удобочитаемом формате ( -h ), и отменять результат ( -r ).
- head -5 : печатает только первые пять строк конвейерного вывода.
У команды du есть много других опций, которые можно использовать для уточнения вывода об использовании дискового пространства.
Выводы
Мы показали вам, как найти самые большие файлы и каталоги с помощью команд find и du .
Теперь, когда вы узнали, как находить самые большие файлы в своей системе, вы можете прочитать наше руководство о том, как удалить файлы и каталоги с помощью командной строки Linux .
Если у вас есть вопросы или замечания, пожалуйста, оставьте комментарий ниже.
Источник
Найти 10 самых больших файлов linux
Наёдем 5 самых больших по размеру файлов в директории и её поддиректориях. Отметим, что данный процесс может занять некоторое время в зависимости от количества обрабатываемых файлов.
Найдём 5 самых маленьких файлов в директории и её поддиректориях. Техника та же самая, единственное отличие в сортировке.
Если в директории и поддиректориях были пустые файлы (zero byte files), то скорее всего они будут в списке 5 самых маленьких файлов. Следующим способом мы найдем 5 самых маленьких файлов, исключая пустые:
Также для поиска самых больших и самых маленьких файлов можно использовать команду листинга.
Найдём 10 самых больших файлов в текущей директории. Чтобы найти наибольший файл в каталоге, используйте команду ls с опцией `-S’, которая сортирует файлы в нисходящем порядке по размеру (обычно ls выводит список файлов по алфавиту). Добавьте опцию `-l’, чтобы вывести размер и другие атрибуты файла.
Найдём 10 cамых маленьких файлов в текущей директории. Чтобы вывести оглавление каталога, начав с файлов наименьшего размера, используйте ls с ключами `-S’ и `-r’, которые сортируют вывод в обратном порядке.
Чтобы вывести список каталогов, отсортированных по размеру — то есть размеру всех содержащихся в них файлов — используйте du и sort . Команда du выводит список каталогов в восходящем порядке, начиная с самого маленького; опция -S помещает при выводе в первую колонку размер каталога в килобайтах. Укажите требуемое дерево каталогов в качестве аргумента du и перенаправьте вывод в команду sort с ключом -n , которая отсортирует список по числам.
Показывает 50 самых больших файлов/директорий, отсортированных по размеру:
Вывести список подкаталогов в текущем дереве каталогов, отсортированный по размеру, введите:
Если Вам нужно, чтобы первыми были указаны самые большие каталоги, используйте ключ -r :
Поиск файлов по типу (не путать с расширениями файлов в Windows)
Используя опцию –type , найдем только socket файлы.
А вот так найдем все директории:
Найдем только обычные файлы (normal)
Наёдем все скрытые файлы:
Найдём все скрытые директории:
Поиск файлов с учётом даты модификации другого файла
Команда покажет все файлы, созданные или изменённые после файла ordinary_file.
Чтобы найти файлы, которые новее некоторого файла, введите его имя в качестве аргумента опции -newer . Чтобы вывести все файлы в каталоге /etс, которые новее файла /etc/motd, введите:
Поиск файлов по размеру
Примечание: минуc значит меньше указанного размера, плюс значит больше указанного размера, отсутствие знака означает равенство указанному размеру файла. Единицы измерения:
- если после размера ничего не указано, то это блок 512 байт
- символ k после размера указывает килобайты
- символ b (или с . ) — байты
- символ M — Мегабайты.
Используя опцию -size найдём файлы больше заданного размера в домашней директории:
или другой вариант указания домашней директории (ищем файлы меньше 500 байт):
Найдём файлы меньше заданного размера в домашней директории:
Найдём файлы, совпадающие по размеру с указанным:
Найти файлы во всей системе размером меньше 20 блоков по 512 байт (20*512=10240 байт):
Найти файлы больше 1 Гигабайта:
Создать сокращенные команды часто используемых алгоритмов поиска
Если вы часто используете определённые параметры поиска и не хотите постоянно вводить их, можно создать для удобства сокращенный ввод (alias, псевдоним) этих операций.
Создадим команду rmao для удаления файлов с именем a.out:
Удалить файлы core (ядра), созданные программой с
Источник
Поиск больших файлов и директорий в Linux
Дисковое пространство не вечно. Рано или поздно приходит момент, когда его катастрофически не хватает. Эффективный способ это исправить — найти файлы и директории, которые занимают больше всего места.
Рассмотрим, как это сделать в Linux с использованием команд find и du .
Поиск больших файлов командой find
Простой поиск
Команда find имеет опцию -size , которая позволяет указать размер файлов для поиска.
Найдем файлы, которые занимают больше 1Gb:
- Символ точка . после самой команды find, означает, что поиск нужно вести в текущей директории. Вместо точки вы можете указать, например, корневой раздел / или путь до любой другой директории.
- -mount означает, что в процессе поиска не нужно переходить на другие файловые системы.
- -type f означает, что мы ищем файлы.
- -size +1G означает, что нужно найти файлы, размер которых превышает 1Gb. Размер можно указать в различных форматах:
- b — блоки размером 512 байт. Числом указывается количество блоков.
- c — в байтах. Например: -size +128с
- w — в двухбайтовых словах
- k — в килобайтах
- M — в мегабайтах
- G — в гигабайтах
- 2>/dev/null используется, чтобы не показывать ошибки (например, если нет доступа к файлу).
В результате выполнения команды будет выведен список файлов без какой-либо дополнительной информации.
Вывод подробной информации
Добавим в вывод информацию о каждом файле и отсортируем список по размеру. Выполняем команду
Данная команда состоит из трех частей:
- Команда find ищет файлы, которые имеют размер больше 512 мегабайт.
- Результирующий список файлов передается команде xargs , которая, в свою очередь, запускает команду ls -lh над этим списком файлов. В результате получается таблица с файлами и информацией о файлах.
Опция -r , команды xarg, используется для того, чтобы не запускать команду ls, если команда find вернула пустой результат (не нашла файлов). Вместо -r можно использовать длинную запись — опцию —no-run-if-empty
Опция -d ’\n’ используется, чтобы разделять список файлов только по символу новой строки (по \n ). А у нас так и есть — каждый файл на новой строке. Иначе неправильно будут обработаны файлы, в названии которых содержится пробел, так как по умолчанию команда xarg в качестве разделителя использует одновременно пробел, табуляцию или символ новой строки.
Примечание: Для BSD-систем вместо -d ’\n’ нужно использовать опцию −0 , а у команды find вместо -print использовать -print0 . Пример: find . -mount -type f -size +512M -print0 2>/dev/null | xargs -0 ls -lh | sort -k5,5 -h -r
Ключ -h означает, что результат нужно вывести в удобно-читаемом виде (human-readable).
Ключ -r означает, что сортировку нужно выполнять по убыванию (reverse).
Поиск больших файлов и директорий командой du
Команда du используется для вывода размеров файлов и директорий в Linux. Ее можно использовать для поиска больших файлов и директорий. Для этого выполняется команда du и результат сортируется по размеру. Таким образом можно увидеть, кто занимает больше всего места на диске.
Найдем пять самых больших файлов и директорий:
- Символ . указывает путь и означает текущую директорию. Для поиска в другой директории укажите вместо точки ее путь.
- Опции -ahx означают:
a — искать и файлы и директории;
h — выводить информацию в удобно-читаемом формате;
x — не выполнять поиск на других файловых системах. - sort -rh выполняет сортировку результата.
- head −5 выводит только пять первых результатов.
Источник