Unix Man (Справочное руководство)

         

LS(1)


LS(1)

НАЗВАНИЕ


ls - выдача информации о файлах или каталогах

СИНТАКСИС

ls [-R] [-a] [-d] [-C] [-x] [-m] [-l] [-n] [-o] [-g] [-r] [-t] [-u] [-c [-p] [-F] [-b] [-q] [-i] [-s] [-f] [имя ...]

ОПИСАНИЕ


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

Существует три основных формата выдачи. По умолчанию выдается по одному файлу в строке; флаги -C и -x позволяют выдавать информацию в несколько колонок, а флаг -m задает свободный формат. Для определения формата вывода при указании флагов -C, -x и -m используется переменная окружения COLUMNS, значение которой равно количеству символов в выходной строке. Если эта переменная не установлена, используется база данных и значение переменной окружения TERM. Если эта информация недоступна, длина выходной строки берется равной 80.

Командой ls обрабатываются следующие флаги:

-R -a -d -C -x -m -l -n -o -g -r -t -u -c -p -F -b -q -i -s -f
Рекурсивно обойти встретившиеся подкаталоги.
Вывести список всех файлов (обычно не выводятся файлы, имена которых начинаются с точки).
Если аргумент является каталогом, то выводить только его имя, а не содержимое. Часто используется с флагом -l для получения сведений о состоянии каталога.
Вывод в несколько колонок с сортировкой по колонкам.
Вывод в несколько колонок с сортировкой по строкам.
Вывод в свободном формате, имена файлов разделяются запятыми.
Вывод в длинном формате: перед именами файлов выдается режим доступа, количество ссылок на файл, имена владельца и группы, размер в байтах и время последней модификации (см. ниже). Если файл является специальным, то в поле размера выводится старший и младший номера устройства.
То же, что и -l, но идентификаторы владельца и группы выводятся в виде чисел, а не в виде имен.
То же, что и -l, но идентификатор группы не выводится.
То же, что и -l, но идентификатор владельца не выводится.
Изменить порядок сортировки на обратный алфавитный или, при наличии флага -t, сначала выводить более старые файлы.
Имена файлов сортируются не по алфавиту, а по времени (сначала идут самые свежие файлы). По умолчанию используется время последнего изменения. См. также флаги -u и -c.
Вместо времени последнего изменения использовать время последнего доступа для сортировки (с флагом -t) или для вывода (с флагом -l).
Вместо времени последнего изменения использовать время последней модификации описателя файла (т.е. время создания файла, изменения режима доступа к нему и т.п.) для сортировки (с флагом -t) или для вывода (с флагом -l).
Если файл является каталогом, то выдавать после его имени символ /.
Если файл является каталогом, то выдавать после его имени символ /; если файл является выполняемым, то выдавать после его имени символ *.
Выдавать непечатные символы, входящие в имя файла, в восьмеричном виде (\ddd).
Выдавать непечатные символы, входящие в имя файла, в виде символа ?.
Выдавать в первой колонке номера описателей файлов.
Выдавать размер файлов в блоках (включая косвенные блоки).
Рассматривать каждый аргумент как каталог и выводить его содержимое. Этот флаг отменяет флаги -l, -t, -s, -r и включает флаг -a. Сортировка имен файлов не производится; имена выдаются в таком порядке, в каком они перечислены в каталоге.


Режим доступа к файлу при указании флага -l выводится в виде 10 символов. Первый символ означает: d b c p -
Файл является каталогом.
Файл является специальным блочным файлом.
Файл является специальным символьным файлом.
Файл является именованным каналом.
Обычный файл.
Остальные 9 символов делятся на три группы по три символа: права доступа владельца, других пользователей из его группы, всех прочих пользователей. Внутри каждой группы используются три символа, обозначающие права на чтение, запись и выполнение файла соответственно. Для каталога под правом на выполнение подразумевается право на просмотр в поисках требуемого файла.

При использовании команды

ls -l /util/by

результат выглядит примерно так:

-rwxr-xr-x 1 root sys 50 Jun 22 10:42 /util/by

Читая справа налево можно увидеть, что содержимое файла /util/by последний раз изменялось в 10 часов 42 минуты 22 января. Размер файла 50 байт. Владелец этого файла принадлежит группе sys, к тому же он является суперпользователем (входное имя - root). Следующее число, в данном случае 1, обозначает количество ссылок на файл /util/by. Наконец, последовательность минусов и букв указывает, что владелец, члены группы и прочие пользователи могут читать и выполнять файл, а владелец (и только он) имеет право писать в файл.

Права обозначаются следующим образом: r w x - l s S t T
Право на чтение.
Право на запись.
Право на выполнение (поиск в каталоге).
Данное право доступа отсутствует.
Учет блокировки доступа (бит переустановки идентификатора группы равен 1, бит права на выполнение членами группы равен 0). Располагается на месте права на выполнение для членов группы.
Право переустанавливать идентификатор группы или идентификатор владельца и право выполнения файла для членов группы или владельца.
Неопределенная комбинация бит: право переустанавливать идентификатор владельца есть, а право выполнения файла для владельца отсутствует.
Установлен бит навязчивости [см. ] у файла, который могут выполнять прочие пользователи. Располагается на месте права на выполнение для прочих пользователей.
Бит навязчивости установлен, а права на выполнение у прочих пользователей нет. Располагается на месте права на выполнение для прочих пользователей.




ПРИМЕРЫ



  • Если файл имеет режим

    -rwxr--r-

    он доступен владельцу для чтения, записи и выполнения, а членам группы и прочим пользователям только для чтения.
  • Режим

    -rwsr-xr-x

    свидетельствует о том, что файл доступен владельцу для чтения, записи и выполнения, а членам группы и прочим пользователям только для чтения и выполнения. Разрешена переустановка при выполнении идентификатора пользователя на идентификатор владельца файла.
  • В случае режима

    -rw-rwl--

    файл доступен для чтения и записи только владельцу и членам группы; может быть блокирован при доступе.
  • По команде

    ls -a

    будут выведены имена всех файлов в текущем каталоге, включая и те, которые начинаются с точки и обычно не выдаются.
  • По команде

    ls -aisn

    будет выдана разнообразная информация: список всех файлов, включая те, которые обычно не выводятся (a); номера описателей файлов будут выведены в левой колонке (i); размеры файлов (в блоках) выводятся во второй колонке (s); наконец, будут выданы числовые идентификаторы владельцев и групп (n).


  • ФАЙЛЫ



    /etc/passwd Идентификаторы пользователей (для ls -l и ls -o). /etc/group Идентификаторы групп для (ls -l и ls -o). /usr/lib/terminfo/?/* Сведения о терминале.

    СМ. ТАКЖЕ



    , .

    СЮРПРИЗЫ



    Непечатные символы в именах файлов могут дезорганизовать выдачу.


    Содержание раздела