Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Командная строка Unix.docx
Скачиваний:
3
Добавлен:
01.07.2025
Размер:
2 Мб
Скачать
☆
      1. Просмотр содержимого текущего каталога

Одной из наиболее часто возникающих ситуаций при работе с командной строкой является необходимость посмотреть содержимое какого-либо каталога. В Unix для этих целей используется команда ls.

Синтаксис:

ls [-ключи] [имя_файла | имя_каталога] …

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

Рис. 4.3. Пример вывода команды ls без параметров и ключей

По умолчанию результат работы команды ls сортируется в алфавитном порядке.

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

Для каждого заданного параметра команда ls выводит:

  • содержимое (оглавление) указанного каталога, если параметр является именем каталога;

  • имя файла и другую требуемую информацию, если параметр является именем файла.

Для управления форматом вывода служат многочисленные ключи команды (табл. 4.1).

Таблица 4.1. Ключи команды ls

№

Ключ

Назначение

1.

-1 (цифра 1)

Вывод информации о каждом следующем файле или каталоге в отдельной строке.

2.

-a

Вывод списка всех файлов и подкаталогов в каталоге, включая скрытые файлы (их имена начинаются с точки).

3.

-c

Сортировка по дате создания.

4.

-F

Пометить исполняемые файлы звездочкой (*), каталоги – наклонной чертой (/) и символические ссылки – символом @.

5.

-r

Вывод в обратном порядке.

6.

-R

Рекурсивная работа.

7.

-l (малая буква L)

Длинный (наиболее полный) формат вывода.

8.

-u

Сортировка по дате последнего доступа к файлу.

9/

-C

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

10

-i

Для каждого файла выводится номер индексного дескриптора (уникальный номер файла).

11

-f

Вывод не сортируется, т.е. порядок вывода соответствует порядку файлов в каталоге.

Примеры вывода команды ls с различными ключами представлены на рис. 4.4 – 4.7.

Рис. 4.4. Вывод команды ls с ключом -a

Рис. 4.5. Вывод команды ls с ключом -1 (цифра 1)

Рис. 4.6. Вывод команды ls с ключом -F

Наиболее полный формат вывода обеспечивается при указании ключа –l (английская буква “эль малое”) (рис. 4.7).

Рис. 4.7. Вывод команды ls с ключом –l (английская буква “эль малое”)

Рассмотрим поля строки вывода в полном формате.

Первое поле в этой строке отражает права доступа к файлу. Во втором поле строки вывода указано число ссылок на файл. Третье поле указывает на владельца файла, четвёртое поле указывает на группу, которая владеет этим файлом. Пятое поле — длина файла в байтах. Шестое поле — дата создания файла в формате (месяц, день, минуты, секунды). Последнее поле — это имя файла.

Тип файла и права доступа к нему для трех категорий пользователей, определенных в операционной системе Unix, указываются с помощью ряда односимвольных индикаторов.

Тип файла указывается с помощью символьного индикатора, размещенного в первой позиции поля. Этот индикатор может принимать одно из семи значений (табл. 4.2).

Таблица 4.2. Типы файлов Unix

символ

тип файла Unix

-

обычный файл;

d

каталог;

b

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

c

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

p

FIFO-файл или именованный программный канал;

l

символическая связь (link); символическая связь - это особый файл, содержащий в качестве данных имя пути к файлу или каталогу, к которым перенаправляются все запросы;

s

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

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

Права доступа к файлу для всех категорий пользователей указываются с помощью четырёх символов: символ r — сокращение от read (англ. читать), w — сокращение от write (англ. писать), символ x, означающий наличие прав на исполнение (англ. execute, исполнять) файла. Наличие каждого из указанных символов означает наличие соответствующего права в отношении файла. Если же вместо одного из символов стоит символ «-», то соответствующее права отсутствует. Каждый из индикаторов указывается строго на своем месте — сначала r, затем w и x.

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

Символ «/» обозначает имя корневого каталога системы. Следовательно, команда ls / выведет на экран содержимое корневого каталога (рис. 4.8):

Рис. 4.8. Вывод содержимого корневого каталога

Символ «.» обозначает текущий каталог. В результате команды ls с этим параметром на экран будет выведено содержимое текущего каталога (стр. 4.9).

Рис. 4.9. Вывод содержимого текущего каталога

Использование в качестве параметра имени «..» заставляет команду ls вывести на экран имя текущего каталога

Рис. 4.10. Вывод наименования текущего каталога

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

Пример. Вывести список файлов текущего каталога в полном формате и поместить результат в файл full_dir.txt. Затем вывести список объектов текущего каталога на экран. Результат выполнения перечисленных команд представлен на рис. 4.11.

Рис. 4.11. Пример создания файла с результатами работы команды ls