$ ls [Enter]
apple cherry orange
$
В этом примере текущий рабочий каталог содержит три файла: `apple', `cherry',
и `orange'.
Чтобы просмотреть содержимое подкаталога `work' в текущем каталоге, введите:
$ ls work [Enter]
Чтобы просмотреть содержимое каталога `/usr/doc', введите:
$ ls /usr/doc [Enter]
Из листинга по умолчанию Вы не сможете отличить каталоги и исполняемые файлы
от обычных. Используйте ключ `-F', который заставит ls поместить символ `/'
после имен подкаталогов и символ `*' после имен исполняемых файлов:
$ ls -F [Enter]
repeat* test1 test2 words/
$
В этом примере текущий рабочий каталог содержит исполняемый файл `repeat', каталог `words', и несколько файлов других типов `test1' и `test2'.
Еще один способ просмотра содержимого каталогов - использование ``менеджера файлов'', которых для Linux создано достаточно много; наиболее популярным является ``Midnight Commander'' или mc.
Чтобы вывести более подробный листинг каталога, используйте ls с ключом `-l' (``long''). Листинг будет содержать размер каждого файла в байтах, время последней модификации, тип файла, имя владельца и права доступа.
Для вывода подробной информации о каталоге `/usr/doc/bash', введите:
$ ls -l /usr/doc/bash [Enter]
total 72
-rw-r--r-- 1 root root 13744 Oct 19 22:57 CHANGES.gz
-rw-r--r-- 1 root root 1816 Oct 19 22:57 COMPAT.gz
-rw-r--r-- 1 root root 16398 Oct 19 22:57 FAQ.gz
-rw-r--r-- 1 root root 2928 Oct 19 22:57 INTRO.gz
-rw-r--r-- 1 root root 4751 Oct 19 22:57 NEWS.gz
-rw-r--r-- 1 root root 1588 Oct 19 22:57 POSIX.NOTES.gz
-rw-r--r-- 1 root root 2718 Oct 19 22:57 README.Debian.gz
-rw-r--r-- 1 root root 19596 Oct 19 22:57 changelog.gz
-rw-r--r-- 1 root root 1446 Oct 19 22:57 copyright
drwxr-xr-x 9 root root 1024 Jul 25 1997 examples
$
Первая строка содержит информацию о полном объеме занимаемого каталогом
дискового пространства в блоках по 1024 байта (в данном случае 72). Каждая
последующая строка содержит несколько колонок с информацией о каждом файле.
Первая колонка указывает тип файла и права доступа к нему. Первый символ в этой колонке определяет тип файла; тире (`-') означает обычный файл (по умолчанию). Каталоги обозначаются буквой `d', а символические ссылки - буквой `l'. Остальные девять символов в первой колонке указывают права доступа к файлу. Вторая колонка указывает количество жестких ссылов на файл. Третья и четвертая колонки указывают пользователя и группу, которые владеют этим файлом. Пятая колонка содержит размер файла в байтах, шестая - время и дату последней модификации файла, а в последней колонке указано имя файла, к которому относится информация.
Чтобы просмотреть каталог рекурсивно, то есть со всеми содержащимися в нем
подкаталогами, используйте опцию `-R'. Например, для текущего каталога введите:
$ ls -R [Enter]
play work
play:
notes
work:
notes
$
В данном примере текущий рабочий каталог содержит два подкаталога, `work' и
`play', но не содержит файлов. Каждый из подкаталогов содержит файл `notes'.
Чтобы вывести полное оглавление все файловой системы, наберите:
$ ls -R / [Enter]
Обычно этот ключ комбинируют с опцией `-l', чтобы вывести наиболее полный листинг файлов системы:
$ ls -lR / [Enter]
Примечание: Некоторые каталоги могут не попасть в листинг, если у Вас нет права доступа к ним.
Чтобы отсортировать список файлов в каталоге по времени создания или модификации, используйте опцию `-t'. Например, чтобы вывести список файлов в каталоге `/usr/tmp', чтобы самые новые файлы были вверху списка, введите:
$ ls -t /usr/tmp [Enter]
По умолчанию, ls не выводит имена файлов, начинающиеся с символа ``точка'' (`.'). Чтобы уменьшить листинг, многие приложения ``скрывают'' файлы конфигурации в Вашем домашнем каталоге, присваивая им имена, начинающиеся с точки; они называются dot-файлы, или ``скрытые''. Каждый каталог имеет два специальных dot-файла: `..' - родительский каталог и `.' - сам этот каталог.
Чтобы увидеть все файлы в каталоге, включая скрытые, используйте опцию `-a'. Например, для текущего каталога:
$ ls -a [Enter]
Чтобы увидеть все файлы, исключая специальные `..' и `.', используйте опцию `'-A:
$ ls -A [Enter]
Чтобы увидеть цветной листинг каталога, используйте ls с ключом `--color'
; тогда все имена файлов будут выведены разными цветами, в зависимости от их
содержания. По умолчанию каталоги выводятся синим, текстовые файлы - белым,
исполняемые - зеленым и т.д.
Примечание: Обычно для команды `ls -color' создается псевдоним `ls', так что листинг выводится в цвете по умолчанию.
Для того, чтобы вывести граф иерархии каталогов, используйте утилиту tree.
Например, для вывода дерева каталогов, начиная с текущего, наберите:
$ tree [Enter]
.
|-- projects
| |-- current
| `-- old
| |-- 1
| `-- 2
`-- trip
`-- schedule.txt
4 directories, 3 files
$
В этом примере выводится дерево каталогов, в котором текущий каталог содержит два подкаталога `projects' и `trip'; а каталог `projects', в свою очередь, содержит подкаталоги `current' и `old'.
Чтобы вывести дерево каталогов для определенного каталога, укажите его имя в качестве аргумента tree. Например, для Вашего домашнего каталога, введите:
$ tree ~ [Enter]
Чтобы вывести дерево каталогов, в котором будут присутствовать только имена каталогов, используйте опцию `-d'. Это полезно при выводе полного дерева каталогов системы:
$ tree -d / > tree [Enter]
Команда ls имеет много опций для управления листингом и отображаемой информацией о файлах; приведенная таблица описывает некоторые из них.
Опция | Описание | |
--color |
Вывод имен файлов в цвете, в зависимости от их типа. | |
-R |
Рекурсивный список файлов. | |
-a |
Вывод всех файлов, включая скрытые. | |
-d |
Вывод только имен каталогов, без промсмотра их содержимого. | |
-f |
Вывод содержимого каталога в том порядке, в котором оно записано на диск. | |
-l |
Подробный листинг. | |
-r |
Сортировка содержимого каталога в обратном порядке. | |
-s |
Вывод размера - в блоках по 1K - для каждого файла. | |
-t |
Сортировка по времени создания или модификации файла. |
Примечание: Вы можете комбинировать опции в любом порядке; например, чтобы вывести список файлов, отсортированный по времени, со всеми атрибутами, введите `-lt'. Чтобы рекурсивно отобразить все скрытые файлы и их атрибуты, используйте `-lRa'. Порядок опций не имеет значения, так что `-lRa' означает то же самое, что и `-alR'.