Команда Ls в Linux (Список Файлов и Каталогов)

Команда Ls в Linux (Список Файлов и Каталогов)

Ls Command in Linux (List Files and Directories)

11 Января 2020 | Терминал

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

Команда Ls в Linux (Список Файлов и Каталогов)

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

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

Синтаксис lsкоманды следующий:

ls [OPTIONS] [FILES]

При использовании без параметров и аргументов ls отображает список имен всех файлов в текущем рабочем каталоге :

ls


   Файлы перечислены в алфавитном порядке:

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


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

ls /etc


Вы также можете передать несколько каталогов и файлов в ls команду через пробел:

ls /etc /var /etc/passwd


   Если пользователь, в который вы вошли, не имеет прав на чтение каталога, вы получите сообщение о том, что он ls не может открыть каталог:

ls /root
ls: cannot open directory '/root': Permission denied


   У ls команды есть несколько опций. В следующих разделах мы рассмотрим наиболее часто используемые параметры.

Подробный формат списка

Вывод команды по умолчанию ls показывает только имена файлов и каталогов, что не очень информативно.

Параметр -l (нижний регистр L) ls позволяет печатать файлы в формате длинного списка.

Если используется формат длинного списка, ls команда отобразит следующую информацию о файле:

  • Тип файла
  • Файл разрешений
  • Количество жестких ссылок на файл
  • Владелец файла
  • Файловая группа
  • Размер файла
  • Дата и время
  • Имя файла


   Рассмотрим следующий пример:

ls -l /etc/hosts
-rw-r--r-- 1 root root 337 Oct  4 11:31 /etc/hosts


   Давайте объясним наиболее важные столбцы вывода.

Первый символ показывает тип файла. В нашем примере первый символ указывает на обычный файл. Значения для других типов файлов следующие:

  • - - обычный файл
  • b - заблокировать специальный файл
  • c - Специальный символьный файл
  • d - Справочник
  • l - символическая ссылка
  • n - Сетевой файл
  • p - FIFO
  • s - Разъем


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

  • r - Разрешение на чтение файла
  • w - разрешение на запись в файл
  • x - Разрешение на выполнение файла
  • s - установить бит
  • t - липкий бит


В нашем примере rw-r--r-- означает, что пользователь может читать и записывать файл, а группа и другие пользователи могут только читать файл. Число после символов разрешения - это количество жестких ссылок на этот файл.

Следующие два поля root root показывают владельца файла и группу, за которыми следует размер файла ( 337)  в байтах. Используйте эту -h опцию, если вы хотите напечатать размеры в удобочитаемом формате. Вы можете изменить владельца файла с помощью chown команды.

Oct 4 11:31 - дата и время последнего изменения файла.

Последний столбец - это имя файла.

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

По умолчанию lsкоманда не показывает скрытые файлы. В Linux скрытым файлом является любой файл, начинающийся с точки ( .).

Чтобы отобразить все файлы, включая скрытые, используйте -a параметр:

ls -la ~/
drwxr-x--- 10 baksdev  baksdev  4096 Feb 12 16:28 .
drwxr-xr-x 18 baksdev  baksdev  4096 Dec 26 09:21 ..
-rw-------  1 baksdev  baksdev  1630 Nov 18  2017 .bash_history
drwxr-xr-x  2 baksdev  baksdev  4096 Jul 20  2018  bin
drwxr-xr-x  2 baksdev  baksdev  4096 Jul 20  2018  Desktop
drwxr-xr-x  4 baksdev  baksdev  4096 Dec 12  2017 .npm
drwx------  2 baksdev  baksdev  4096 Mar  4  2018 .ssh


Сортировка вывода 

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

--sort Опция позволяет сортировать вывод по расширению, размеру, времени и версии:

  • --sort=extension (или -X) - сортировка по алфавиту по расширению.
  • --sort=size (или -S) - сортировка по размеру файла.
  • --sort=time (или -t) - сортировка по времени модификации.
  • --sort=version (или -v) - Естественный вид номеров версий.


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

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

ls -ltr /var


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


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

-R Опция указывает ls команду , чтобы отобразить содержимое подкаталогов рекурсивно:

ls -R


Вывод 

Команда ls выводит информацию о файлах и каталогах.

Для получения дополнительной информации lsпосетите страницу GNU Coreutils или введите man ls свой терминал.


    Комментарии

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

Загрузка комментариев...