Длинный список файлов с " ls -l " в OpenBSD 5.3 | |
Автор (ы) оригинала | AT&T Bell Laboratories |
---|---|
Разработчики) | Различные разработчики с открытым исходным кодом и коммерческие разработчики |
Операционная система | Multics , Unix , Unix-like , Plan 9 , Inferno , MSX-DOS |
Платформа | Кроссплатформенность |
Тип | Командование |
Лицензия | coreutils : GPLv3 + |
В вычислениях , ls
является команда в список компьютерных файлов в Unix и Unix-подобных операционных систем. ls
определяется POSIX и спецификацией Single UNIX . При вызове без аргументов ls выводит список файлов в текущем рабочем каталоге . Команда также доступна в оболочке EFI . [1] В других средах, таких как DOS , OS / 2 и Microsoft Windows , аналогичная функциональность обеспечивается dir
командой. Численные вычислениясреды MATLAB и GNU Octave включают ls
функцию с аналогичной функциональностью. [2] [3]
История [ править ]
ls
Утилита появилась в первой версии AT & T UNIX , имя , унаследованное от аналогичной команды в Multics также называют «LS», сокращенно от слова «список». [4] [5] [6] ls
является частью X / Open Portability Guide, начиная с выпуска 2 1987 года. Он был унаследован от первой версии POSIX.1 и Single Unix Specification . [7]
ls
Команда также является частью ASCII «S MSX-DOS2 Инструменты для MSX-DOS версии 2. [8]
Сегодня две популярные версии ls
- это та, которая поставляется с пакетом GNU coreutils , и версия , выпущенная различными вариантами BSD . Оба являются бесплатными программами с открытым исходным кодом и имеют лишь незначительные различия в синтаксисе. ls
Встроенная в GNU coreutils версия была написана Ричардом Столлманом и Дэвидом Маккензи. [9]
Поведение [ править ]
Unix и Unix-подобные операционные системы поддерживают идею текущего рабочего каталога , то есть того места, где он в настоящее время находится в иерархии каталогов . При вызове без аргументов ls
выводит список файлов в текущем рабочем каталоге. Если указан другой каталог, тогда ls
будут перечислены файлы в нем, и фактически пользователь может указать любой список файлов и каталогов, которые будут перечислены.
Файлы, имена которых начинаются с "." которые не перечислены , если -a
не указан флаг, -A
флаг указан, или файлы указаны в явном виде.
Без параметров ls
отображает файлы в чистом формате. Однако этот простой формат затрудняет определение типа, разрешений и размера файлов. Наиболее распространенные варианты раскрытия этой информации или изменения списка файлов:
-l
длинный формат, отображающий типы файлов Unix , разрешения, количество жестких ссылок , владельца, группу, размер, дату последнего изменения и имя файла-f
не сортировать. Полезно для каталогов, содержащих большое количество файлов.-F
добавляет символ, раскрывающий природу файла, например,*
для исполняемого файла или/
для каталога. У обычных файлов нет суффикса.-a
перечисляет все файлы в данном каталоге, включая те, чьи имена начинаются с "." (которые в Unix являются скрытыми файлами ). По умолчанию эти файлы исключены из списка.-R
рекурсивно перечисляет подкаталоги. Таким образом, командаls -R /
выведет список всех файлов.-d
показывает информацию о символической ссылке или каталоге, а не о цели ссылки или перечислении содержимого каталога.-t
отсортировать список файлов по времени модификации.-h
размеры печати в удобочитаемом формате. (например, 1K, 234M, 2G и т. д.) Эта опция не является частью стандарта POSIX, хотя и реализована в нескольких системах, например, GNU coreutils в 1997 г., [10] FreeBSD 4.5 в 2002 г. [11] и Solaris 9 в 2002. [12]-1
(числовая цифра один) принудительно выводит по одной записи на строку.
Обычно можно выделять разные типы файлов разными цветами, а не символами, как -F
было бы, но это область, в которой две основные ls
версии различаются:
- GNU
ls
использует--color
опцию; проверяет тип файла Unix, права доступа к файлу и расширение файла; и использует собственную базу данных для управления цветами. [13] - FreeBSD
ls
использует эту-G
опцию; проверяет только тип файла Unix и права доступа к файлу. и использует базу данных termcap [14]
Когда выбрана опция использования цвета для обозначения типов файлов, результат может выглядеть так:
-rw-r - r-- 1 персонал unixguy 26650 20 декабря 11:16 audio.ogg brw-r - r-- 1 персонал unixguy 64, 64 27 января 05:52 bd-block-device crw-r-- r-- 1 персонал unixguy 64, 255 26 января 13:57 cd-character-device -rw-r - r-- 1 персонал unixguy 290 26 января 14:08 image.png drwxrwxr-x 2 персонал unixguy 48 26 января 11 : 28 di-directory -rwxrwxr-x 1 персонал unixguy 29 26 января 14:03 бывший исполняемый файл -rw-r - r-- 1 персонал unixguy 0 20 декабря 09:39 fi-обычный файл lrwxrwxrwx 1 персонал unixguy 3 26 января 11:44 ln-soft-link -> dir lrwxrwxrwx 1 персонал unixguy 15 декабря 20 10:57 or-orphan-link -> mi-missing-link drwxr-xrwx 2 персонал unixguy 4096 20 декабря 10 : 58 ow-other- writeable -dir prw-r - r-- 1 персонал unixguy 0 26 января 11:50 pi-pipe -rwxr-sr-x 1 персонал unixguy 0 20 декабря 11:05 sg-setgid srw-rw -rw- 1 персонал unixguy 0 26 января 12:00 so-socket
drwxr-xr-t 2 посох unixguy 4096 20 декабря 10:58 st-sticky-dir
-rwsr-xr-x 1 персонал unixguy 0 20 декабря 11:09su-setuid
-rw-r - r-- 1 персонал unixguy 10240 20 декабря 11:12 compressed.gz
drwxrwxrwt 2 персонал unixguy 4096 20 декабря 11:10 tw-sticky-other-writeable-dir
Пример использования [ править ]
В следующем примере демонстрируется вывод команды с ls
двумя разными аргументами ( pwd
это команда, которая показывает текущий рабочий каталог или, другими словами, папку, в которой вы в данный момент находитесь):
$ pwd / home / fred $ ls -l drwxr - r-- 1 fred editors 4096 draft -rw-r - r-- 1 fred editors 30405 edition-32 -r-xr-xr-x 1 fred fred 8460 edit $ ls -F drafts / edition-32 edit *
В этом примере у пользователя fred
есть каталог с именем drafts
, обычный файл с именем edition-32
и исполняемый файл с именем edit
в его домашнем каталоге. ls
использует обозначение разрешений файла Unix, чтобы указать, каким пользователям или группам разрешен доступ к каждому файлу или каталогу.
drwxr - r-- 1 fred editors 4096 1 марта 2007 г. черновики
В этом примере Черновики это каталог (обозначается дескриптором файла d), а символы после этого указывают разрешения:
- rwx: владелец (Фред) имеет право читать (р), записывать (ш) и выполните (Икс)
- р--: участники группы (пользователи, входящие в редакторыgroup) имеют права только на чтение; запись и выполнение не разрешены, что обозначается символами дефиса (-)
- р--: другие (пользователи, кроме владельца или участников редакторы) иметь разрешение только на чтение; запись и выполнение не разрешены
См. Также [ править ]
- Chown
- chgrp
- du (Unix)
- mdls
- Идентификатор пользователя (Unix)
- Идентификатор группы (Unix)
- Список команд Unix
- Структура каталогов Unix
Ссылки [ править ]
- ^ «Оболочки EFI и сценарии» . Intel . Проверено 25 сентября 2013 .
- ^ https://www.mathworks.com/help/matlab/ref/ls.html
- ^ https://octave.sourceforge.io/octave/function/ls.html
- ^ Страница руководства Multics для команды ls или list
- ^ «Краткая история команды 'ls'» , Эрик Фишер, Проект документации Linux
- ^ "Руководство программиста Multics - Команды и активные функции" (PDF) . п. 397.
- ^ - Справочник по командам и утилитам, спецификация Single UNIX , выпуск 7 от The Open Group
- ^ Руководство пользователя MSX-DOS2 Tools от ASCII Corporation
- ^ - Руководство по основным командам Linux ; - Руководство по основным командам FreeBSD
- ^ "(decode_switches): -h и -H отменяют единицы вывода" . coreutils.git. 1997-12-31.
- ^ "[база] Журнал /stable/10/bin/ls/ls.c" . 2001-12-28.
- ^ Что нового в операционной среде Solaris 9 , Sun Microsystems, 2002
- ^ «NCURSES - Часто задаваемые вопросы (FAQ): Мой терминал не распознает цвет» . Проверено 23 июня 2013 года .
- ^ "FreeBSD Man Pages - ls" . Проверено 23 июня 2013 года .
Внешние ссылки [ править ]
В Wikibook Guide to Unix есть страница по темам: Команды |
- - Справочник по командам и утилитам, спецификация Single UNIX , выпуск 7 от The Open Group
- - Руководство по основным командам FreeBSD
- - Руководство по основным командам NetBSD
- - Руководство по основным командам OpenBSD
- - Справочное руководство по командам пользователя Solaris 10
- - Руководство по командам пользователя Linux
- - Руководство программиста Plan 9 , том 1
- - Руководство по общим командам Inferno
- lsИсходный код GNU (как часть coreutils)
- ls на вики LinuxQuestions.org