Как использовать команду ls в Linux

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

Команда ls в Linux

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

Вы также можете связать ls с другими командами bash. Например, связка оператора grep с ls позволит вам искать и фильтровать каталог для определенных файлов.

Как использовать команду ls

Базовый синтаксис команды ls:

 ls [options] [directory]

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

 ls

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

 bin dev home lib64 mnt proc run srv tmp var
boot etc lib lost+found opt root sbin sys usr

Список файлов в определенном каталоге

Для вывода списка файлов, принадлежащих другой папке (не текущему рабочему каталогу), вам нужно будет передать путь к каталогу вместе с именем команды.

 ls [directory]

Чтобы получить список всех файлов в каталоге / boot :

 ls /boot

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

 EFI grub initramfs-linux-fallback.img initramfs-linux.img vmlinuz-linux

Использование флага -F с командой добавит символ / в конец каждого каталога.

 EFI/ grub/ initramfs-linux-fallback.img initramfs-linux.img vmlinuz-linux

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

 ls /boot /usr
 Output
/boot:
EFI grub initramfs-linux-fallback.img initramfs-linux.img vmlinuz-linux
/usr:
bin etc include lib lib32 lib64 local sbin share src

Список файлов в корневом каталоге

Корневой каталог содержит все остальные каталоги и файлы в вашей системе. Это самая верхняя папка в иерархии каталогов вашего компьютера. Корневой каталог обычно обозначается символом / .

 ls /

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

Список файлов в родительском каталоге

Родительский каталог в Linux – это каталог над текущим каталогом. Возьмем для примера / usr / bin . Здесь / bin – ваш текущий рабочий каталог, а / usr – родительский каталог.

Чтобы получить список всех файлов в родительском каталоге:

 ls ..
 bin etc include lib lib32 lib64 local sbin share src

Добавление еще одного .. перенесет вас в родительский каталог родительского каталога. Например, / var / log / old – это ваш текущий рабочий каталог. ls .. отобразит список папок, находящихся в каталоге / log, тогда как ls ../ .. предоставит вам список всех файлов и папок, содержащихся в каталоге / var .

 ls ../..
 cache db empty games lib local lock log mail opt run spool tmp

Список файлов в домашнем каталоге

Домашний каталог в Linux обозначается символом ~ . Следовательно, чтобы вывести список содержимого, доступного в вашем домашнем каталоге:

 ls ~

Список только каталогов (без файлов)

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

 ls -d /home

Список файлов с подкаталогами

Использование символа * с командой ls предоставит вам список всех файлов и папок в текущем рабочем каталоге, а также подкаталоги.

 ls *

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

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

 ls -R

Обратите внимание, что вы также можете передать путь к каталогу вместе с рекурсивным флагом. Это означает, что ls / usr / home -R – допустимая команда.

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

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

 ls -s /yay-git
 total 2944
4 pkg 4 src 4 yay 2932 yay-git-10.1.2.r0.g7d849a8-2-x86_64.pkg.tar.zst

Связанный: Перемещение файлов в Linux с помощью команды Mv

Список файлов с подробной информацией

Флаг -l позволяет вам получить список содержимого каталога Linux с подробным описанием каждой записи. В вывод включается следующая информация:

  1. Разрешения для файлов и папок
  2. Количество ссылок
  3. Владелец контента
  4. Владелец группы
  5. Размер содержимого
  6. Имя файла
  7. Дата и время последнего изменения
 ls -l
 total 2944
drwxr-xr-x 3 sharmadeepesh sharmadeepesh 4096 Feb 8 13:53 pkg
drwxr-xr-x 4 sharmadeepesh sharmadeepesh 4096 Feb 8 13:52 src
drwxr-xr-x 7 sharmadeepesh sharmadeepesh 4096 Feb 8 13:54 yay
-rw-r--r-- 1 sharmadeepesh sharmadeepesh 2998674 Feb 8 13:53 yay-git-10.1.2.r0.g7d849a8-2-x86_64.pkg.tar.zst

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

Различные типы файлов, с которыми вы часто будете сталкиваться:

  1. Обычные файлы (-)
  2. Заблокировать специальные файлы (б)
  3. Специальные файлы символов (c)
  4. Справочник (d)
  5. Символическая ссылка (l)
  6. Сетевой файл (n)
  7. FIFO (p)
  8. Розетки)

Что касается прав доступа к файлам, в выводе используются следующие символы.

  1. Читаемый (r)
  2. Возможность записи (w)
  3. Исполняемый файл (x)

Возьмем, к примеру, d rw-r – r– . Первый символ указывает, что запись является каталогом. Следующие два символа обозначают, что текущий пользователь имеет разрешения на чтение и запись. Остальные символы предоставляют информацию о правах доступа к файлам для других пользователей.

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

Команда -s предоставляет вам числовое значение, связанное с каждой записью. И, что очевидно, вы не узнаете, что означает это значение. Поэтому, чтобы перечислить файлы и их размеры в удобочитаемой форме, используйте вместе с командой флаг -lh .

 ls -lh
 total 2.9M
drwxr-xr-x 3 sharmadeepesh sharmadeepesh 4.0K Feb 8 13:53 pkg
drwxr-xr-x 4 sharmadeepesh sharmadeepesh 4.0K Feb 8 13:52 src
drwxr-xr-x 7 sharmadeepesh sharmadeepesh 4.0K Feb 8 13:54 yay
-rw-r--r-- 1 sharmadeepesh sharmadeepesh 2.9M Feb 8 13:53 yay-git-10.1.2.r0.g7d849a8-2-x86_64.pkg.tar.zst

В выводе используются спецификаторы размера для байтов (B), мегабайт (МБ), гигабайт (ГБ) и терабайт (ТБ).

Список скрытых файлов

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

 ls -a

Конвейер ls с командой Grep

Команда grep используется для сопоставления шаблонов, следующих за определенным регулярным выражением. Вы можете связать эту команду с ls, чтобы искать файлы, присутствующие в вашей системе. В корневом каталоге введите:

 ls | grep l

Это перечислит все файлы и папки, которые начинаются с символа l. Вы также можете фильтровать свои файлы по их расширениям, используя grep.

Сортировать файлы по времени и дате

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

 ls -t

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

Флаг -S позволит вам сортировать файлы и папки в соответствии с их размером.

 ls -S

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

 ls -Sr

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

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

 ls > ls-output.txt

Позже вы можете прочитать содержимое только что созданного файла, набрав в терминале cat ls-output.txt .

Отображение содержимого каталога с помощью команды ls

Команда ls – одна из самых мощных команд, предоставляемых пользователям Linux. Чтобы получить максимальную отдачу от команд в терминале, вы можете попробовать научиться объединять команды вместе. Вы даже можете передать команду mv по конвейеру для перемещения файлов с помощью ls.

Совет номер один, чтобы освоиться с Linux, – это запомнить некоторые основные команды. Это, несомненно, поможет вам стать более эффективным и быстрым при использовании вашей системы.