3.6.2. Команда ls - напечатать содержимое справочника
Все справочники в файловой системе имеют информацию о содержащихся в них файлах и справочниках, такую как: имя, размер и дата последней модификации. Вы можете получить эту информацию о вашем текущем справочнике и других системных справочниках, задав команду ls.
Команда ls перечисляет имена всех файлов и подсправочников в указанном справочнике. Если вы не укажете справочник, то команда ls напечатает информацию о файлах и справочниках в вашем текущем справочнике.
Обратимся к примеру. Предположим, что вы зарегистрировались в системе UNIX под именем startship и задали команду pwd. Система напечатает имя пути /home/startship. Чтобы отобразить имена файлов и справочников в этом текущем справочнике, введите команду ls и нажмите клавишу <RETURN>. После того, как вы выполните последовательность этих команд, экран будет выглядеть следующим образом:
$ pwd<CR>
/home/startship
$ ls<CR>
bin
draft
letters
list
mbox
$
Обратите внимание, что система выдает перечень справочников в алфавитном порядке. Если первым символом имени файла или справочника будет цифра или большая буква, то оно будет напечатано первым.
Чтобы напечатать имена файлов и подсправочников в справочнике, отличном от текущего без перехода из текущего справочника, вы должны указать имя справочника.
Синтаксис команды:
ls имя пути <CR>
Имя пути может быть либо полным именем пути требуемого справочника, либо родственным. Например, вы можете получить содержание справочника draft, когда вы работаете в справочнике startship, если введете команду ls draft. Экран терминала будет выглядеть следующим образом:
$ ls draft<CR>
outline
table
$
В этом примере draft является родственным именем пути от родителя (starship) к подчиненному справочнику (draft).
Вы также можете использовать родственное имя пути для печати содержимого родительского справочника в то время, когда вы находитесь в подчиненном справочнике. Две точки (..) являются самым простым способом выполнения этой функции. Например, следующая командная строка указывает родственное имя пути от справочника startship к home:
$ ls ..<CR>
jmrs
mary2
startship
$
Вы получите тот же результат, если зададите полное имя пути от root к home:
ls /home<CR>
Вы можете распечатать содержимое любого системного справочника, к которому имеете право доступа, выполнив команду ls с полным или родственным именем пути.
Команда ls особенно полезна, если вы имеете много файлов и пытаетесь определить, существует ли определенный файл в вашем текущем справочнике. Например, вы находитесь в справочнике draft и хотите определить, есть ли в нем файлы outline и notes. Задайте команду ls следующим образом:
$ ls outline notes<CR>
outline
notes: No such file or directory
$
Система сообщит, что файл outline существует в этом справочнике, а вот файл notes не найден.
Команда ls не распечатывает содержимое файла. Для этих целей воспользуйтесь командами cat, pg, pr.
3.6.2.1. Часто используемые ключи команды ls
Команда ls может содержать ключи, которые перечисляют специфичные атрибуты файла или подсправочника. Чаще всего используются ключи -a и -l.
- Перечислить все файлы в справочнике.
Имена некоторых файлов в вашем собственном справочнике начинаются с точки (например, .profile). Когда имя файла начинается с точки, он не включается в список, распечатываемый командой ls. Чтобы распечатать такие файлы, введите команду ls с ключом -a.
Например, чтобы распечатать информацию о всех файлах в вашем текущем справочнике (starship), включая и файлы, имя которых начинается с точки, введите команду ls -a и нажмите клавишу <RETURN>. Экран будет выглядеть следующим образом:
$ ls -a<CR>
.
..
.profile
bin
draft
letters
list
mbox
$
- Распечатать содержание в укороченном формате.
Ключи -C и -F команды ls используются достаточно часто. Вместе эти ключи распечатывают подсправочники и файлы справочников и помечают исполняемые файлы символом *, справочники - символом /, символическую связь(каналы) - символом @.
Например, вы можете распечатать информацию о всех файлах вашего рабочего справочника startship, выполнив команду:
$ ls -CF<CR>
bin/ letters/ mbox
draft/ list*
$
- Распечатать содержание в расширенном формате.
Возможно, более информативным ключом команды ls является ключ -l, который отображает содержание справочника в расширенном формате. Этот формат включает в себя: режим, число связей, владелец, группа, размер в байтах и время последней модификации каждого файла. Предположим, вы задали команду ls -l, находясь в справочнике startship:
$ ls -l<CR>
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).
Следующее число показывает длину файла или справочника в байтах. Месяц, день и время последней модификации файла - в предпоследней колонке. В последней колонке представлено имя справочника или файла.
Назад | Содержание | Вперед