(c) Larry Ewing, Simon Budig, Garrett LeSage
с 1994 г.

Кафедра Информатики и Математического Обеспечения

ПетрГУ | ИМиИТ | О кафедре | Мобильные платформы | Лаборатория ИТС | Семинары НФИ/AMICT
Сотрудники | Выпускники | Учебный процесс | Табель-календарь | Курсовые и выпускные работы
Вычислительные ресурсы | Публикации | Архив новостей | Контактная информация

Содержание лекции

 #  Тема    Обновлено 
1  Семейство операционных систем Unix/Linux  19.02.2007
2  Командный интерпретатор shell. Место в составе СПО ОС  19.02.2007
3  Командная строка. Компоненты. Примеры команд  19.02.2007
4  Средства перенаправления ввода-вывода  19.02.2007
5  Средства условного выполнения  19.02.2007
6  Средства группировки команд  19.02.2007
7  Экранирование метасимволов  19.02.2007

Материалы для самостоятельного изучения

 #  Тема    Обновлено 
1  Исторические и философские аспекты ОС UNIX/Linux  19.02.2007
2  Использование встроенной справочной системы  19.02.2007
3  Редактирование командной строки  19.02.2007

Использование встроенной справочной системы

Основным источником получения справки являются так называемые страницы руководства — manual pages (John Eaton, 1990). Для отображения справочной страницы по заданному ключевому слову следует исполнить команду

man номер_раздела ключевое_слово

Справочная страница содержит следующие типовые разделы

 #   Описание   Название 
1  Имя команды (или объекта, для которого вызвана справка)   NAME
2  Синтаксис вызова с перечнем допустимых опций   SYNOPSIS
3  Подробное описание команды   DESCRIPTION
4  Перечень и описание допустимых опций   OPTIONS
5  Аспекты взаимодействия со средой, окружением   ENVIRONMENT
6  Ссылки на смежные страницы   SEE ALSO
7  Сведения об авторах программы   AUTHORS
8  Известные проблемы и обнаруженные ошибки   BUGS

Страницы сгруппированы по разделам. Если номер раздела не указан, то man выводит страницу с меньшим найденным номером. Для вывода всех страниц по заданному клчевому слову следует воспользоваться опцией -a.

 #   Описание   Примечание 
1  Команды shell и утилиты   
2  Системные вызовы ОС   Функции ядра системы
3  Библиотечные вызовы   В том числе стандартная библиотека Си
4  Специальные файлы   Преимущественно из каталога /dev
5  Соглашения о форматах файлов   Например, /etc/passwd
6  Игровые программы   
7  Разное   В основном макропакеты
8  Административные утилиты   Доступные пользователю root
9  Документация по ядру   Не стандартизовано

Пользователь может осуществлять поиск по man-странице, команда /выражение — поиск в прямом направлении, ?выражение — в обратном, n — поиск следующего вхождения в прямом направлении, N — поиск следующего вхождения в обратном направлении. Выйти из справочника можно командой q. Краткое описание команды можно получить с помощью whatis. Поиск по базе данных whatis осуществляется с помощью команды apropos.

В последние годы все большую популярность завоевывает гипертекстовая справочная система info. Организация справочной системы info — иерархическая, вся документация сведена в единое дерево, в котором документы (так называемые ноды) являются узлами. Текст каждой ноды может содержать гиперссылки на другие ноды. Пользователь может перемещаться по дереву справочника с помощью команд:

 #   Описание   На клавиатуре 
1  Пролистать текст узла на страницу вниз   PgDn
2  Пролистать текст узла на страницу вверх   PgUp
3  Перейти по ссылке под курсором   Enter
4  Перейти к заданной именем ноде   g
5  Перейти на следующий узел того же родителя   n
6  Перейти на предыдущий узел того же родителя   p
7  Перейти на родительский узел   u
8  Перейти на предыдущий посещенный узел   l
9  Выбор пункта меню   m
10  Перейти по указанной ссылке   f
11  Перейти на локальный корневой узел   t
12  Перейти на абсолютный корневой узел   d
13  Поиск по текущему узлу   s
14  Выход из справочника   q

Многие команды являются самодокументированными и отображают справку по использованию при вызове команды с опцией --help.

Редактирование командной строки

Управление пользовательским вводом в интерактивном режиме осуществляется посредством функций библиотеки readline, которая предоставляет пользователю широкий набор операции редактирования командной строки. По умолчанию команды редактирования строки аналогичны используемым в emacs. Поддерживается также стиль редактирования vi (переключение между стилями осуществляется с помощью встроенной команды set).

Большинство команд редактирования можно вызвать, используя клавиатурные эквиваленты. В таблице приведены лишь некоторые из наиболее употребимых команд. Запись C-x в данном случае означает нажатие клавиши x с зажатой клавишей Control, M-x — клавиши x с зажатой клавишей Meta (Alt), ESC x означает последовательное нажатие клавиш Escape, затем x. Readline допускает переопределение клавиатурных эквивалетов (файлы /etc/inputrc и .inputrc в домашнем каталоге пользователя).

 #   Описание   Комбинация 
1  Перемещение курсора в начало текущей строки  C-a
2  Перемещение курсора в конец текущей строки  C-e
3  Перемещение курсора на один символ вперед  C-f
4  Перемещение курсора на один символ назад  C-b
5  Перемещение курсора на последний символ следующего слова  M-f
6  Перемещение курсора на первый символ текущего или предыдующего слова  M-b
7  Очистить экран  C-l
8  Переход к предыдущей команде в истории команд  C-p или up
9  Переход к следующей команде в истории команд  C-n или down
10  Переход к началу истории команд  M-<
11  Переход в конец истории команд  M->
12  Обратный поиск в истории команд  C-r
13  Удаление следующего символа  C-d или Delete
14  Удаление предыдущего символа  Backspace
15  Обмен символа перед курсором с символом под курсором  C-t
16  Обмен слова перед курсором с словом под курсором  M-t
17  Приведение всех символов текущего слова к верхнему регистру  M-u
18  Приведение всех символов текущего слова к нижнему регистру  M-l
19  Капитализация текущего слова  M-c
20  Удаление части строки от текущей позиции до конца  C-k
21  Удаление части строки от начала до текущей позиции  C-x Backspace
22  Удаление части строки от текущей позиции до конца слова  M-d
23  Удаление части строки от начала слова до текущей позиции  M-Backspace
24  Автодополнение переменной, имени пользователя или команды  TAB
25  Откат операции  C-_