Команда ls

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

Основные опции и примеры использования

Базовая форма

ls

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

Пример результата:

file.txt   folder1   another_file.py

Показывать скрытые файлы

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

ls -a

Результат покажет скрытые элементы:

.   ..   .hidden_file   file.txt   folder1

Подробный вывод списка файлов

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

ls -l

Пример вывода:

-rw-r--r-- 1 user group 123 Apr 18 12:34 file.txt
drwxr-xr-x 2 user group 4096 Apr 18 12:34 folder1

Разберём подробно строки вывода:

  • -rw-r—r—: Права доступа к файлу (чтение-запись-исполнение).
  • 1: Количество жёстких ссылок на этот файл.
  • user: Имя владельца файла.
  • group: Группа владельца файла.
  • 123: Размер файла в байтах.
  • Apr 18 12:34: Дата последнего изменения файла.
  • file.txt: Название файла.

Вывод размера файлов в удобочитаемом формате

Используйте опцию -h («human-readable») вместе с -l, чтобы размеры были понятнее человеку.

ls -lh

Пример вывода:

-rw-r--r-- 1 user group 123B Apr 18 12:34 file.txt
drwxr-xr-x 2 user group 4.0K Apr 18 12:34 folder1

Здесь размер файла представлен в килобайтах (KB), мегабайтах (MB) и т.п., а не в чистом количестве байтов.

Рекурсивный просмотр вложенных директорий

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

ls -R

Этот вариант полезен, если нужно быстро посмотреть структуру дерева каталогов целиком.

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

Опция -S сортирует файлы по размеру в порядке убывания.

ls -Sl

Файлы будут отсортированы от больших к меньшим.

Фильтрация файлов по шаблону

Можно фильтровать вывод с использованием символов маски, например, показывая только файлы определённого типа.

Например, показать только .txt файлы:

ls *.txt

или показывать файлы, начинающиеся с буквы ‘f’:

ls f*

Примеры сложных комбинаций

Для наглядности рассмотрим комплексные варианты команд:

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

ls -alF

где:

  • a: показывает скрытые файлы
  • l: детализирует вывод
  • F: добавляет символ / к именам каталогов, * к исполняемым файлам и т.д.

Показать всё содержание текущего каталога рекурсивно и удобно читаемо

ls -alhR