Linux вывести список файлов по размеру

Содержание
  1. Как в Linux вывести список всех файлов каталога, упорядоченный по размеру
  2. Поиск больших файлов в Linux
  3. Найдите большие файлы с помощью команды find
  4. Найдите большие файлы и каталоги с помощью команды du
  5. Выводы
  6. Вывод списка файлов с сортировкой
  7. Вывод директорий над файлами
  8. Как отсортировать файлы по размеру с помощью команды ls в Linux
  9. 1) Перечислить содержимое содержимого каталога при сортировке по размеру
  10. 2) Список содержимого каталога с сортировкой по размеру
  11. 3) Сортировка выходных данных и размеров в удобном формате для чтения (например, 1K 48M 1G)
  12. Бонусные советы
  13. 4) Список в алфавитном порядке сортировки
  14. 5) Список в обратном порядке по алфавиту
  15. 6) Список скрытого содержимого каталога в алфавитном порядке сортировки
  16. 7) Список содержимого каталога в алфавитном порядке сортировки
  17. Поиск больших файлов и директорий в Linux
  18. Поиск больших файлов командой find
  19. Простой поиск
  20. Вывод подробной информации
  21. Поиск больших файлов и директорий командой du

Как в Linux вывести список всех файлов каталога, упорядоченный по размеру

Оригинал: How to List All Files Ordered by Size in Linux
Автор: Aaron Kili
Дата публикации: January 18, 2020.
Перевод: В.Костромин
Дата перевода: 4 мая 2020 г.

В одной из наших предыдущих заметок о популярной команде ls, мы рассказали как получить список файлов, отсортированный по времени изменения (дате и времени) в Linux. В настоящей, короткой статье мы покажем несколько полезных опций команды ls , с помощью которых вы сможете получить список файлов каталога, отсортированный по размеру.

Чтобы получить список фалов в каком-то каталоге, откройте окно терминала и задайте приведенные ниже команды. Обратите внимание, что будучи запущена без параметров, команда ls выведет список файлов в текущем каталоге.

В следующем примере опция -l задает вариант вывода списка в длинном формате, а опция -a указывает ls , что нужно вывести все содержимое каталога, включая скрытые файлы и указание на родительский каталог (.) . Для того, чтобы строки . и .. не показывались, используйте опцию -A вместо -a .

Список всех файлов в каталоге

Чтобы получить список файлов, отсортированный по размеру, используйте опцию -S . По умолчанию сортировка производится в порядке убывания (от больших к меньшим по размеру).

Список файлов, отсортированный по размеру

Вы можете получить отображение размера файла в человеко-читаемом формате, если добавите опцию -h как показано в следующем примере.

Список файлов, отсортированный по размеру, в человеко-читаемом формате

Если хотите получить список, отсортированный в обратном порядке, то есть по возрастанию, добавьте опцию -r , как в следующем примере.

Список файлов, отсортированный по размеру в порядке возрастания

Кроме того, вы можете получить рекурсивный список файлов в подкаталогах, если используете опцию -R .

Рекурсивный список файлов в подкаталогах

Вы можете найти другие статьи о консольных командах, опубликованные на нашем сайте:

Источник

Поиск больших файлов в Linux

Со временем на вашем диске может появиться множество ненужных файлов, занимающих много места на диске. Обычно в системах Linux не хватает места на диске из-за больших файлов журналов или резервных копий.

В этом руководстве объясняется, как найти самые большие файлы и каталоги в системах Linux с помощью команд find и du .

Читайте также:  Область диска не распределена windows 10

Найдите большие файлы с помощью команды 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 .

Если у вас есть вопросы или замечания, пожалуйста, оставьте комментарий ниже.

Источник

Вывод списка файлов с сортировкой

Поделюсь удобными параметрами команды ls для сортировки списка файлов. Команда ls предназначена для вывода списка файлов и директорий, но по умолчанию она сортирует список по имени.

Читайте также:  Вызов командной строки astra linux

Для того, чтобы отсортировать список файлов используются следующие опции:

Опции команды ls для сортировки файлов.

Опция Эквивалентная
опция
Описание
-U —sort=none без сортировки
-X —sort=extension сортировка по расширению файла
-S —sort=size сортировка по размеру
-t —sort=time сортировка по времени изменения
-v выполнять сортировку по версиям файлов
-r выполнять сортировку в обратном порядке

Например, мы хотим отсортировать список по размеру файлов, тогда выполняем команду:

Это эквивалентно следующей команде:

Аналогично, например, если мы хотим получить список, отсортированный по расширению файлов:

Вывод директорий над файлами

Обычно команда ls выводит директории вперемешку с файлами. Некоторые реализации команды ls поддерживают полезную опцию: —group-directories-first. Если данная опция указана, то все директории будут выводится над списком файлов, что очень удобно.

Дополнительную информацию по команде ls вы можете получить, выполнив в терминале: man ls.

Источник

Как отсортировать файлы по размеру с помощью команды ls в Linux

Если вы новый пользователь в мире Linux, команда ls является самой популярной и очень полезной командой для перечисления содержимого каталогов.

В этой статье мы объясним, как использовать параметр сортировки ls для отображения содержимого каталога по размеру.

1) Перечислить содержимое содержимого каталога при сортировке по размеру

Чтобы перечислить содержимое определенного каталога с сортировкой по размеру, мы будем использовать опции -lS с командой ls.

Чтобы указать размер файла, мы будем использовать параметр -s с командой ls.

2) Список содержимого каталога с сортировкой по размеру

Чтобы перечислить содержимое определенного каталога с сортировкой по размеру, мы будем использовать опции -lSr с командой ls.

3) Сортировка выходных данных и размеров в удобном формате для чтения (например, 1K 48M 1G)

для сортировки выходных данных и размеров в человекочитаемом формате мы будем использовать -h с командой ls.

Кроме того, мы можем выводить размеры в читаемом формате для конкретного расширения.

Бонусные советы

4) Список в алфавитном порядке сортировки

Чтобы перечислить содержимое определенного каталога с сортировкой по алфавиту, мы будем использовать команду ls только без опции, потому что по умолчанию используется алфавитная сортировка.

Чтобы перечислить содержимое определенного каталога с подробной информацией, добавьте путь к каталогу.

5) Список в обратном порядке по алфавиту

Чтобы перечислить содержимое определенного каталога с подробными сведениями в обратном порядке сортировки по алфавиту, мы будем использовать опции -lr с командой ls.

6) Список скрытого содержимого каталога в алфавитном порядке сортировки

Чтобы отобразить скрытое содержимое определенного каталога, мы будем использовать опции -a или -all с командой ls.

7) Список содержимого каталога в алфавитном порядке сортировки

Чтобы показать содержимое определенного каталога с подробными сведениями, такими как права доступа к файлам, количество ссылок, имя владельца и владельца группы, размер файла, время последней модификации и имя файла / каталога, мы будем использовать -l с командой ls.

Источник

Поиск больших файлов и директорий в Linux

Дисковое пространство не вечно. Рано или поздно приходит момент, когда его катастрофически не хватает. Эффективный способ это исправить — найти файлы и директории, которые занимают больше всего места.

Рассмотрим, как это сделать в Linux с использованием команд find и du .

Читайте также:  Tiny core linux firefox

Поиск больших файлов командой 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

  • Затем результат команды ls передается команде sort , которая выполняет сортировку списка (таблицы) по пятой колонке — 5-я колонка содержит размеры файлов.
    Ключ -h означает, что результат нужно вывести в удобно-читаемом виде (human-readable).
    Ключ -r означает, что сортировку нужно выполнять по убыванию (reverse).
  • Поиск больших файлов и директорий командой du

    Команда du используется для вывода размеров файлов и директорий в Linux. Ее можно использовать для поиска больших файлов и директорий. Для этого выполняется команда du и результат сортируется по размеру. Таким образом можно увидеть, кто занимает больше всего места на диске.

    Найдем пять самых больших файлов и директорий:

    • Символ . указывает путь и означает текущую директорию. Для поиска в другой директории укажите вместо точки ее путь.
    • Опции -ahx означают:
      a — искать и файлы и директории;
      h — выводить информацию в удобно-читаемом формате;
      x — не выполнять поиск на других файловых системах.
    • sort -rh выполняет сортировку результата.
    • head −5 выводит только пять первых результатов.

    Источник

    Оцените статью