- •1.1. Командный интерфейс
- •1.2. Взаимодействие на основе меню
- •1.2.1. Интерфейс на основе текстового меню
- •1.2.2. Графический интерфейс пользователя
- •2.1. Виды пользовательского интерфейса в unix-подобных системах
- •2.2. Терминал и консоль
- •3.1. Запуск командной строки
- •3.3. Кома́ндная оболо́чка unix
- •3.4. Перенаправление ввода-вывода
- •3.5. Способы объединения команд
- •3.6. Возможности интерфейса командной оболочки
- •3.6.1.Редактирование командной строки
- •3.6.2. История команд
- •3.6.3. Автодополнение
- •4.1. Просмотр файлов инструкций (получение справки о команде)
- •4.2. Команды по работе с файловой системой
- •4.2.1. Определение места текущего каталога в файловой системе
- •Просмотр содержимого текущего каталога
- •4.2.3. Создание нового каталога
- •4.2.4. Удаление каталога пустого каталога
- •Переход из каталога в каталог
- •Копирование файлов и каталогов
- •Перемещение (или переименование) файлов (команда mv)
- •Создание и просмотр файлов
- •Удаление файлов и непустых каталогов
- •Ссылки и работа с ними
- •Пользовательский интерфейс операционных систем ………………… 3
- •Командный интерфейс …………………………………………………. 3
Просмотр содержимого текущего каталога
Одной из наиболее часто возникающих ситуаций при работе с командной строкой является необходимость посмотреть содержимое какого-либо каталога. В 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
