В первой строке отображается весь размер каталога, в котором вы перечисляете файлы. При добавлении -л вариант вывода будет отображать права доступа к файлам в первом столбце, жесткие ссылки, владелец, группа, размер в байтах, месяц, день и время и, наконец, имя файла.
Если вы хотите отсортировать этот вывод по размеру файла, от большего к меньшему, вам нужно добавить -S (Сортировать) вариант.
# ls -lS
Как вы можете видеть, в выводе перечислены файлы и каталоги, отсортированные по размеру, но в байтах, что не очень удобно для человека (1 байт равен 0.000001 МБ в десятичной системе и 0.00000095367432 МБ в двоичном формате).
Чтобы распечатать результат удобным для человека способом, вам нужно только добавить -час (дружелюбный к человеку) вариант:
# ls -lSh
Как вы можете видеть в выходных данных выше, теперь размеры файлов отображаются в ГБ, МБ, КБ и байтах.
Тем не менее, вы видите только обычные файлы без скрытых файлов, если вы хотите включить скрытые файлы в вывод, вам нужно добавить параметр -а (все), как показано ниже:
Как видите, скрытые файлы (начинающиеся с точки) теперь тоже печатаются.
Дополнительные советы:
Следующие дополнительные советы помогут вам ограничить вывод конкретным размером блока, отличным от байтов. Проблема этой опции заключается в том, что вывод никогда не бывает точным, если файл меньше или больше, чем точное количество этого блока.
Если вы хотите печатать в единице определенного размера, только инструктируя ls отображать все файлы с ближайшим размером в этой единице, только вы можете добиться этого, например, чтобы распечатать все файлы в МБ, вы можете добавить -размер блока = параметры, указывающие MB с помощью M, как показано в синтаксисе и снимке экрана ниже:
# ls -lS - размер блока = M Как вы можете видеть, теперь размер указан только в МБ, более крупный файл - 115 МБ, второй - 69 МБ и т. Д. Файлы размером в КБ или байтах не будут напечатаны точно, они будут отображаться как 1 МБ, что является ближайшим размером, который можно напечатать, если он ограничен МБ.
Остальная часть вывода остается точно такой же.
Используя тот же вариант (-размер блока =) вы можете отображать вывод в ГБ, а не в МБ или байтах, синтаксис такой же, замените M для грамм как в примере ниже:
# ls -lS - размер блока = G
Вы также можете распечатать размер в килобайтах, заменив M или G на K:
# ls -lS - размер блока = K
Во всех приведенных выше примерах будут перечислены файлы и каталоги, отсортированные по размеру в единицах измерения, которые вы хотите, с проясненной проблемой, упомянутой выше, вывод не будет точным для файлов, которые не соответствуют точному размеру единицы. Кроме того, эти примеры не включали скрытые файлы (которые начинаются с .). Для этого вам нужно будет добавить опцию -а (all), который также будет отображать скрытые файлы, поэтому для печати файлов, отсортированных по размеру по байтам, выполните:
# ls -laS
Как вы можете видеть, скрытые файлы, начиная с . (точка) печатаются, например .xsession-errors, .ICEauthority и т. Д.
Если вы хотите распечатать файлы и каталоги, отсортированные по размеру в МБ, включая скрытые файлы, выполните:
# ls -laS - размер блока = M
Чтобы распечатать или отобразить все файлы и каталоги, отсортированные по размеру, указанному в ГБ, включая скрытые файлы, выполните:
# ls -laS - размер блока = G
Аналогично предыдущим командам, чтобы распечатать файлы и каталоги, упорядоченные по размеру, указанному в КБ, включая скрытые файлы, выполните:
# ls -laS - размер блока = K
Заключение:
Команда ls предоставляет множество функций, которые помогают нам управлять файлами и печатать на них информацию. Другим примером может быть использование ls для вывода списка файлов по дате (с параметрами -lt).
Надеюсь, вы нашли этот урок о том, как перечислить все файлы, упорядоченные по размеру в Linux, полезным. Следите за LinuxHint для получения дополнительных советов и обновлений по Linux и сети.