Команда ls linux описание. Примеры использования в Linux команды ls. Использование утилиты du в linux

Команда ls linux описание. Примеры использования в Linux команды ls. Использование утилиты du в linux

19.03.2019

НАЗВАНИЕ
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, значение которой равно количеству символов в выходной строке. Если эта переменная не установлена, используется база данных terminfo и значение переменной окружения TERM. Если эта информация недоступна, длина выходной строки берется равной 80.

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

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

Режим доступа к файлу при указании флага -l выводится в виде 10 символов. Первый символ означает:

Остальные 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 Учет блокировки доступа (бит переустановки идентификатора группы равен 1, бит права на выполнение членами группы равен 0). Располагается на месте права на выполнение для членов группы.
s Право переустанавливать идентификатор группы или идентификатор владельца и право выполнения файла для членов группы или владельца.
S Неопределенная комбинация бит: право переустанавливать идентификатор владельца есть, а право выполнения файла для владельца отсутствует.
t Установлен бит навязчивости [см. chmod ] у файла, который могут выполнять прочие пользователи. Располагается на месте права на выполнение для прочих пользователей.
T Бит навязчивости установлен, а права на выполнение у прочих пользователей нет. Располагается на месте права на выполнение для прочих пользователей.

ПРИМЕРЫ

  1. Если файл имеет режим -rwxr--r-- он доступен владельцу для чтения, записи и выполнения, а членам группы и прочим пользователям только для чтения. Кстати, по умолчанию на сервере университета файлы создаются со следующими правами доступа: -rw-r----- то есть, владелец файла имеет право на чтение и запись, члены группы, к которой принадлежит владелец файла, имеют право на чтение, а все остальные пользователи вообще не имеют никаких прав.
  2. Режим -rwsr-xr-x свидетельствует о том, что файл доступен владельцу для чтения, записи и выполнения, а членам группы и прочим пользователям только для чтения и выполнения. Разрешена переустановка при выполнении идентификатора пользователя на идентификатор владельца файла.
  3. В случае режима -rw-rwl-- файл доступен для чтения и записи только владельцу и членам группы; может быть блокирован при доступе.
  4. По команде ls -a будут выведены имена всех файлов в текущем каталоге, включая и те, которые начинаются с точки и обычно не выдаются.
  5. По команде ls -aisn будет выдана разнообразная информация: список всех файлов, включая те, которые обычно не выводятся (a); номера описателей файлов будут выведены в левой колонке (i); размеры файлов (в блоках) выводятся во второй колонке (s); наконец, будут выданы числовые идентификаторы владельцев и групп (n).

ФАЙЛЫ

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

СЮРПРИЗЫ
Непечатаемые символы в именах файлов могут дезорганизовать выдачу. Их вообще лучше не использовать.

Вывести содержимое папки или папок

Синтаксис:

ls [-ABCFGHLOPRSTUW@abcdefghiklmnopqrstuwx1 ] [file ...]

Описание:

Для каждого параметра file отличного по типу от папки, ls выводит его имя и информацию, затребованную в параметрах команды. Для параметра file имеющего тип "папка" команда выводит список файлов находящихся в ней и ассоциированную информацию, затребованную в параметрах.

Если параметр file опущен, то выводится содержимое текущей папки. Если указано несколько параметров file, то сначала выводится информация о параметрах типа файл и потом о содержимом папок в алфавитном порядке.

Параметры:

-@ Включить вывод дополнительных атрибутов ключей и размеров, используется вместе с параметром -l
-1 Число "1". Вывести результаты в одну колонку. Параметр установлен по умолчанию в случае вывода не на экран терминала
-A Вывести все результаты исключая . и .. По умолчанию для супер-пользователя.
-a Включить в результат файлы и папки, начинающиеся на точку (. )
-B Выводить непечатаемые символы (как определено в ctype и в локальных настройках системы), в именах файлов в виде \xxx, где xxx -числа в восьмеричной системе
-b Аналогично -B, но там где возможно будет использованы коды C escape.
-C

Вывод в многоколоночном режиме. Параметр установлен по умолчанию, если вывод идет на экран терминала.

-c Использовать для сортировки время последнего изменения файла. Работает вместе с параметрами -t (сортировка по времени) или -l (подробный вывод)
-d

вывести только папку без рекурсии

-e Используется вместе -l и выводит Access Control List (ACL) связанный с файлом (если он имеется).
-F Сразу после имени папки отобразить символ "/", после исполняемых файлов отобразить "*", после символьной ссылки "@", после сокетов (socket) показать равно "=", знак процентов "%" после whiteout и вертикальную черту "|" после FIFO
-f Вывести без сортировки, автоматически включает параметр -a
-G Включить цветной вывод результатов. Этот параметр определяет значение переменно окружения CLICOLOR (описание переменных описано после таблицы параметров)
-g Этот параметр доступен для совместимости с POSIX. Совместно с параметром -l выводится имя группы-владельца файла, а имя пользователя-владельца опускается.
-H Исследовать символьные ссылки в командной строке. Параметр допустим, если не используются -F, -d и -l
-h При использовании с параметром -l будут использованы суффиксы для указания размера файла
-i Для каждого файла печатать его серийный номер (inode number)
-k Если указан параметр -s, то выводить разер файла в килобайтах, а не в блоках. Этот параметр заменяет переменную окружения BLOCKSIZE
-L Следовать за всеми символьными ссылками к финальной цели и вывести список файлов из папки, на которую ссылается ссылка. Отменяет параметр -P
-l Подробный вывод данных. Если вывод в окно терминала, то в первой строке выводится сумма размеров всех файлов папки. Подробнее о параметре написано ниже.
-m Потоковый вывод, файлы выводятся подряд, разделенные запятой.
-n Отображать пользователя и идентификатор группы числом. Более быстрое выполнение, чем отображение с помощью -l, при этом параметр включает параметр -l
-O Выводить признаки файла (file flags). Подробнее команда chflags . Работает вместе с параметром -l.
-o Вывести подробную информацию, опуская при этом Group ID
-P Если параметр file символьная ссылка, вывести сначала саму ссылку и потом файлы, на которые она ссылается. Параметр отменяет параметры -H и -L
-p Обозначить каждую папку символом "/" в конце имени
-q Заменять при выводе непечатные символы символом "?", по умолчанию используется при выводе на терминал
-R Рекурсивный вывод содержимого подпапок
-r Обратная сортировка (по убыванию).
-S Сортировать файлы по размеру
-s Выводить размер файла в 512-байтных блоках, округляя вверх до ближайшего целого. Если вывод в окно терминала, то в первой строке отображается сумма размеров всех файлов. Подменяет переменную окружения BLOCKSIZE.
-T При использовании с параметром -l будут выводиться месяц, день, часы, минуты, секунды и год создания файла
-t Сортировать по времени модификации файла (более ранние модификации сначала) до сортировки по алфавиту.
-u Использовать время последнего открытия файла, вместо последнего изменения (-t) или подробно (-l)
-U Использовать время создания файлов, вместо последнего изменения (-t) или подробно (-l)
-v Force unedited printing of non-graphic characters. По умолчанию при выводе не в окно терминала.
-W Показать whiteouts когда сканируются папки.
-w Force raw printing of non-printable characters. По умолчанию при выводе не в окно терминала.
-x Аналогично -C за исключением сортировки в мультиколоночном выводе. При параметре -x сортировка по строкам, а в -С по колонкам

Параметры -1, -C, -x и -l отменяют друг друга, будет использован написанный последним.

Параметры -c и -u отменяют друг друга, будет использован написанный последним.

Параметры -B, -b, -w и -q отменяют друг друга, для вывода непечатных символов будет использован последний написанный

Параметры -H, -L и -P отменяют друг друга, будет использован написанный последним.

По умолчанию стандартно выводится одноколоночный список, за исключением использования параметров -C или -x.

Подробный вывод (параметр -l)

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

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

Если отображается строка с папкой, то указывается суммарный размер файлов в нем в 512-байтных блоках. Если файл или папка имеют расширенные атрибуты (extended attributes) это отображается символом "@" сразу за правами доступа (устанавливаются командами chflags и setfile), если файл или папка имеют дополнительные параметры безопасности (access list cintrol ACL) это отображается символом плюс "+" сразу за правами доступа.

Если дата последней модификации файла отличается от текущей больше чем на 6 месяцев, то вместо минут и секунд, отображается год.

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

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

  • b -block special file
  • c -character special file
  • d - directory (папка)
  • l -Symbolic link (символьная ссылка)
  • s -Socket link
  • p -FIFO
  • - -стандартный файл

Следующие три поля по три символа означают права доступа к файлу (прав пользователя владельца, права группы, права остальных)

1-й символ может быть "r" - доступно право чтения или "-" - нет права на чтение
2-й символ может быть "w" - доступно право записи в файл или "-" - нет права на запись
3-й символ может принимать следующие значения
S в правах пользователя и групп -нет прав на выполнение,
s в правах пользователя и групп -есть права на выполнение,
x есть права на выполнение и поиск в папке
- нет никаких прав

В правах "остальных пользователей" могут быть указаны дополнительно:

T The sticky bit is set (mode 1000), но выполнение и поиск запрещены. Смотреть команды терминала Mac OS X sticky и chmod
t The sticky bit is set (mode 1000), выполнение и поиск разрешены. Смотреть команды терминала Mac OS X sticky и chmod

Примеры

Вывести подробный список с сортировкой по увеличению размеров

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

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

Обратимся к примеру. Предположим, что вы зарегистрировались в системе UNIX под именем startship и задали команду pwd. Система напечатает имя пути /home/startship. Чтобы отобразить имена файлов и справочников в этом текущем справочнике, введите команду ls и нажмите клавишу . После того, как вы выполните последовательность этих команд, экран будет выглядеть следующим образом:

$ pwd /home/startship $ ls bin draft letters list mbox $

Обратите внимание, что система выдает перечень справочников в алфавитном порядке. Если первым символом имени файла или справочника будет цифра или большая буква, то оно будет напечатано первым.

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

Синтаксис команды:

Ls имя пути

Имя пути может быть либо полным именем пути требуемого справочника, либо родственным. Например, вы можете получить содержание справочника draft, когда вы работаете в справочнике startship, если введете команду ls draft. Экран терминала будет выглядеть следующим образом:

$ ls draft outline table $

В этом примере draft является родственным именем пути от родителя (starship) к подчиненному справочнику (draft).

Вы также можете использовать родственное имя пути для печати содержимого родительского справочника в то время, когда вы находитесь в подчиненном справочнике. Две точки (..) являются самым простым способом выполнения этой функции. Например, следующая командная строка указывает родственное имя пути от справочника startship к home:

$ ls .. jmrs mary2 startship $

Вы получите тот же результат, если зададите полное имя пути от root к home:

Ls /home

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

Команда ls особенно полезна, если вы имеете много файлов и пытаетесь определить, существует ли определенный файл в вашем текущем справочнике. Например, вы находитесь в справочнике draft и хотите определить, есть ли в нем файлы outline и notes. Задайте команду ls следующим образом:

$ ls outline notes outline notes: No such file or directory $

Система сообщит, что файл outline существует в этом справочнике, а вот файл notes не найден.

Команда ls не распечатывает содержимое файла. Для этих целей воспользуйтесь командами cat, pg, pr.

3.6.2.1. Часто используемые ключи команды ls

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

  1. Перечислить все файлы в справочнике.

    Имена некоторых файлов в вашем собственном справочнике начинаются с точки (например, .profile). Когда имя файла начинается с точки, он не включается в список, распечатываемый командой ls. Чтобы распечатать такие файлы, введите команду ls с ключом -a.

    Например, чтобы распечатать информацию о всех файлах в вашем текущем справочнике (starship), включая и файлы, имя которых начинается с точки, введите команду ls -a и нажмите клавишу . Экран будет выглядеть следующим образом:

    $ ls -a . .. .profile bin draft letters list mbox $

  2. Распечатать содержание в укороченном формате.

    Ключи -C и -F команды ls используются достаточно часто. Вместе эти ключи распечатывают подсправочники и файлы справочников и помечают исполняемые файлы символом *, справочники - символом /, символическую связь(каналы) - символом @.

    Например, вы можете распечатать информацию о всех файлах вашего рабочего справочника startship, выполнив команду:

    $ ls -CF bin/ letters/ mbox draft/ list* $

  3. Распечатать содержание в расширенном формате.

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

    $ ls -l total 30 drwx-xr-x 3 startship project 96 Oct 27 08:16 bin drwx-xr-x 2 startship project 64 Nov 1 14:19 draft drwx-xr-x 2 startship project 80 Nov 8 08:41 letters -rwx----- 2 startship project 12301 Nov 2 10:15 list -rw------ 1 startship project 40 Oct 27 10:00 mbox

    Первая выводная строка (total 30) показывает объем дискового пространства в байтах. Последующие строки дают представление о справочниках и файлах в справочнике startship. Первый символ в каждой строке (d, -, l, b или c) говорит о типе файла:

    D = справочник - = обыкновенный файл l = символическая связь(канал) b = специальный блочный файл c = специальный символьный файл

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

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

    Следующим является регистрационное имя владельца файла (в данном случае startship), и за ним - групповое имя файла или справочника (project).

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

Уделим немного времени знакомству с консольными утилитами ls, du и sort в ОС Linux. Рассмотрим их использование с основными ключами и в различных комбинациях, для сортировки файлов и директорий (папок) по размеру.

Использование утилиты ls в linux

1. Вывод списка файлов и директории.

# ls /var/log alternatives.log apt btmp devices dist-upgrade dpkg.log fsck lastlog lxd unattended-upgrades wtmp

Данный вывод неинформативен поэтому лучше использовать ls вместе с ключами.

2. Вывод списока файлов и директорий, включая скрытые файлы в виде "расширеного списка".

# ls -lha /var/log total 308K drwxrwxr-x 1 root syslog 512 Jun 28 21:55 . drwxr-xr-x 1 root root 512 Sep 22 2017 .. -rw-r--r-- 1 root root 364 Dec 19 2017 alternatives.log drwxr-xr-x 1 root root 512 Sep 22 2017 apt -rw-rw---- 1 root utmp 0 Sep 22 2017 btmp drwxr-xr-x 1 root root 512 Jun 28 23:40 devices drwxr-xr-x 1 root root 512 Jul 19 2017 dist-upgrade -rw-r--r-- 1 root root 18K Dec 19 2017 dpkg.log drwxr-xr-x 1 root root 512 Sep 22 2017 fsck -rw-rw-r-- 1 root utmp 286K Dec 19 2017 lastlog drwxr-xr-x 1 root root 512 Aug 23 2017 lxd drwxr-x--- 1 root adm 512 Aug 1 2017 unattended-upgrades -rw-rw-r-- 1 root utmp 0 Sep 22 2017 wtmp

Описание ключей:

"-l" - выводит расширеный листинг.

"-a" - выводит все файлы, в том числе и "скрытые".

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

Использование утилиты du в linux

1. Вывод списка директории c вложенными директориями.

# du /var 0 /var/backups 0 /var/cache/apparmor 0 /var/cache/apt/archives/partial 1856 /var/cache/apt/archives 61740 /var/cache/apt 3996 /var/cache/debconf 16 /var/cache/ldconfig 0 /var/cache/man/cat1 0 /var/cache/man/cat2 0 /var/cache/man/cat3 0 /var/cache/man/cat4 0 /var/cache/man/cat5 ... ... ...

По-умолчанию "du" выводит размер, не только каждой директории, но и всех вложенных в нее директорий /каталогов / папок.

2. Вывод списка директории без вложенных директорий.

# du -h -s /var 22G /var

3. Вывод списка директории c одним уровнем вложения.

# du --max-depth=1 -h /var 0 /var/backups 65M /var/cache 0 /var/crash 108M /var/lib 0 /var/local 320K /var/log 0 /var/mail 0 /var/opt 0 /var/snap 0 /var/spool 0 /var/tmp 174M /var

Описание ключей:

"--max-depth=1" - задает уровень вложенности директорий равной 1.

"-h" - выводит размер файлов в удобном для чтения формате (GB/MB/KB).

Использование утилиты sort в linux

1. Вывод папок отсортированных по размеру.

# du --max-depth=1 /var | sort -nr 177160 /var 110432 /var/lib 66408 /var/cache 320 /var/log 0 /var/tmp 0 /var/spool 0 /var/snap 0 /var/opt 0 /var/mail 0 /var/local 0 /var/crash 0 /var/backups

Описание ключей:

"-n" - сортировка по числам.

"-r" - отображает в выводе самые большие числа вначале.

2. Вывод директорий / каталогов / папок отсортированных по размеру в мегабайтах.

Du --max-depth=1 -m | sort -nr

3. Вывод директорий / каталогов / папок и файлов отсортированных по размеру.

Du -s *|sort -nr

4. Вывод директорий и файлов отсортированных по размеру и преведенный к удобному виду для восприятия размера (KB/MB/GB).

Самый сложный, но в тоже время самый информативный и красивый вывод.

Du -s *|sort -nr|cut -f 2-|while read a;do du -hs $a;done

5. Вывод директорий /каталогов / папок и файлов отсортированных по размеру в файл.

Du -s *|sort -nr > name_file.txt

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

Я использую следующую команду:

В результате я получаю имя файлов в папке, в которой я сейчас находился, вместе с тем, когда они были в последний раз доступны и т.д. На левой стороне есть строка символов, а иногда и тире. Мне было интересно, может ли кто-нибудь дать мне краткое руководство о том, что представляют из каждого персонажа?

Это то, что я имею в виду:

Dr-xr-xr-x

Спасибо за помощь.

4 ответов

На странице man chmod:

read (r), write (w), выполнить (или получить доступ к каталогам) (x), выполнить, только если файл является каталогом или уже выполнил permis- sion для некоторого пользователя (X), установить идентификатор пользователя или группы на выполнение (и), sticky (t), разрешения, предоставленные пользователю, которому принадлежит файл (u), разрешения, предоставленные другим пользователям, которые являются членами группы файлов (g), и разрешения, предоставляемые пользователям, которые находятся в ни одна из двух предыдущих категорий (o).

имея в виду

User can read | user can execute | | group can not write | | | others can read | | | | others can execute | | | | | dr-xr-xr-x | | | | | | | | | others can not write | | | group can execute | | group can read | user can not Write it is a directory

Слева направо каждая из трех букв - это набор разрешений, предназначенный для каждого типа пользователей. Существует три типа разрешений в каждом наборе

R-read w-write x-execute

Слева направо каждый набор определяет разрешения для

1) owner 2) group 3) others(other users)

соответственно в этом файле

Таким образом, в вашем случае каталог имеет права на чтение и выполнение для владельца, группы и других лиц ("-" указывает, что конкретного разрешения там нет). Разрешения могут быть изменены с помощью команды chmod при условии, что у вас есть права доступа к этому файлу/каталогу.

Первый символ - тип файла, обычно вы увидите d для каталога, - для обычного файла или l для ссылки.

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

Первый символ будет либо r либо - , указывая разрешение на чтение.

Второй символ будет либо w либо - , указывая разрешение на запись.

Последний символ будет либо x либо - , либо несколько разных символов в зависимости от специальных свойств файла, как описано в руководстве для ls (см. Ниже).

Также может быть другой символ после этих девяти, указав специальные разрешения доступа, которые описаны в руководстве ls (ниже).

Из руководства для ls

Тип файла - один из следующих символов:

"-" обычный файл

"b" блокировать специальный файл

Специальный файл символа "c"

Файл с высокой производительностью ("смежные данные") C

Каталог "d"

Дверь D (Solaris 2.5 и выше)

"M" off-line ("перенесенный") файл (Cray DMF)

Специальный файл сети "n" (HP-UX)

"p" FIFO (именованный канал)

Порт "P" (Solaris 10 и выше)

"?" другой тип файла

Перечисленные биты режима файла аналогичны спецификациям в символическом режиме (* note Symbolic Modes: :). Но "ls" объединяет несколько бит в третий символ каждого набора разрешений следующим образом:

"s" Если установлены бит set-user-ID или set-group-ID и соответствующий исполняемый бит.

"S" Если бит set-user-ID или set-group-ID установлен, но соответствующий исполняемый бит не установлен.

"t" Если установлены флажок с ограниченным удалением или липкий бит, а другой - исполняемый бит. Флаг ограниченного удаления - это другое имя для липкого бита. * Структура режима записи::.

"T" Если установлен флаг ограниченного удаления или липкий бит, а бит исполняемого файла не установлен.

"x" Если исполняемый бит установлен, и ни одно из вышеизложенного не применяется.

"-" В противном случае.

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

GNU ls" uses a "." для указания файла с контекстом безопасности SELinux, но другого альтернативного метода доступа.

Файл с любой другой комбинацией альтернативных методов доступа помечен символом "+".

Из страниц руководства OpenBSD . Обратите внимание, что это также можно просмотреть в командной строке с помощью man ls . (Удобный для будущих подобных поисков, ах!)

Длинный формат Если заданы опции -g, -l или -n, для каждого файла отображается следующая информация: режим, количество ссылок, владелец (хотя и не для -g), группа, размер в байты, время последней модификации ("mmm dd HH: MM") и имя пути. Кроме того, для каждого каталога, содержимое которого отображается, первая отображаемая строка представляет собой общее количество блоков, используемых файлами в каталоге. Блоки составляют 512 байт, если не переопределены опцией -k или переменной среды BLOCKSIZE.

Если имя владельца или группы не является известным именем пользователя или группы, соответственно, или предоставляется опция -n, отображается числовой идентификатор.

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

Если задана опция -T, время последней модификации отображается в формате "mmm dd HH: MM: SS ccyy".

Режим файла, напечатанный в параметрах -g, -l или -n, состоит из типа записи, прав владельца, групповых разрешений и других разрешений. Символ типа записи описывает тип файла следующим образом:

Следующие три поля имеют три символа: разрешения владельца, групповые разрешения и другие разрешения. Каждое поле имеет три позиции символов:

  • Если r, файл доступен для чтения; если -, это невозможно прочитать.
  • Если w, файл доступен для записи; если -, он не доступен для записи.

Первое из следующего, которое применяется: - S - Если в разрешениях владельца файл не является исполняемым и установлен режим set-user-ID. Если в групповых разрешениях файл не является исполняемым и установлен -g, установлен режим роуд-идентификатора. - s - Если в разрешениях владельца файл является исполняемым и установлен режим set-user-ID. Если в групповых разрешениях файл является исполняемым и установлен режим setgroup-ID. - x - Файл является исполняемым или каталог доступен для поиска. - - Файл не может быть прочитан, доступен для записи, исполняемый файл или идентификатор пользователя, а также не установлен -g roup-ID, а также липкий (см. Ниже).



© 2024 beasthackerz.ru - Браузеры. Аудио. Жесткий диск. Программы. Локальная сеть. Windows