- •Операционная система unix (руководство пользователя)
- •1. Общие сведения о системе Unix
- •1.1. Основные функции и компоненты системы unix
- •1.2. Ядро
- •1.4. Команды
- •1.4.1. Что делают команды
- •1.4.2. Как выполнять команды
- •1.5. Файловая система
- •1.5.1. Обыкновенные файлы
- •1.5.2. Справочники
- •1.5.3. Специальные файлы
- •1.5.4. Символические каналы связи
- •1.6. Расположение системы
- •1.7. Принятые соглашения
- •2. Основные сведения для пользователей Unix
- •2.1. Терминал
- •2.2. Требуемые для установки терминальные характеристики
- •2.3. Характеристики клавиатуры
- •2.4. Соглашения по вводу
- •2.5. Подсказка команды
- •2.6. Исправление ошибок ввода
- •2.6.1. Стереть текущую строку: знак @
- •2.6.3. Переназначение функции удаления
- •2.7. Использование специальных символов как буквенных
- •2.8. Скорость
- •2.9. Останов команд
- •2.10. Использование символов управления
- •2.11. Получение регистрационного имени
- •2.12. Связь с системой unix
- •2.13. Процедура регистрации
- •2.14. Пароль
- •2.16. Простые команды
- •2.17. Выход из системы
- •3. Файловая система
- •3.1. Структура файловой системы
- •3.2. Ваш собственный справочник
- •3.3. Текущий справочник
- •3.4. Имя пути
- •3.4.1. Полное имя пути
- •3.4.2. Родственное имя пути
- •3.5. Правила именования справочников и файлов
- •3.6. Организация справочника
- •3.6.1. Команда mkdir - создать справочник
- •3.6.2. Команда ls - напечатать содержимое справочника
- •3.6.2.1. Часто используемые ключи команды ls
- •3.7. Команда cd - изменить текущий справочник
- •3.8. Команда rmdir - удалить справочник
- •3.9. Доступ к файлу и работа с ним
- •3.10. Основные команды
- •3.10.1. Команды cat, pg, pr - распечатать содержимое файла
- •3.10.1.1. Команда cat
- •3.10.1.2. Команда pg
- •3.10.1.3. Команда pr
- •3.10.2. Команда cp - сделать копию файла
- •3.10.3. Команда mv - переименование файла
- •3.10.4. Команда rm - удалить файл
- •3.10.5. Команда wc - подсчет строк, слов и символов
- •3.10.6. Команда chmod - изменить статус файла
- •3.10.6.1. Как определить права
- •3.10.6.2. Как изменить существующие права
- •3.10.6.3. Альтернативный метод
- •3.10.7. Дополнительные команды
- •3.10.7.1. Команда diff
- •3.10.7.2. Команда grep
- •3.10.7.3. Команда sort
- •4. Обзор программных средств
- •4.2.3. Режимы
- •4.2.4. Построчный редактор
- •4.2.5. Экранный редактор
- •4.2.6. Использование shell
- •4.2.7. Применение средств системы
- •4.2.8. Окружение компьютера
- •4.2.9. Программирование в shell
- •4.2.10. Программирование с помощью awk
- •4.3. Электронная связь
- •4.4. Программирование в системе unix
- •5. Руководство по командной среде face
- •5.1. Что такое face?
- •5.1.1. Организация этого раздела
- •5.2. Введение
- •5.2.1. Регистрация в системе
- •5.2.2. Структура экрана face
- •5.2.2.1. Заголовок
- •5.2.2.2. Рабочая область
- •5.2.2.3. Строка сообщения
- •5.2.2.4. Командная строка
- •5.2.2.5. Метки функциональных клавиш
- •5.3. Что вы увидите после регистрации
- •5.3.1. Альтернативные последовательности
- •5.3.2. Как использовать меню
- •5.3.2.1. Метки функциональных клавиш в меню
- •5.3.2.2. Перемещение в меню
- •5.3.2.3. Выбор пункта меню
- •5.3.3. Как работать с формой
- •5.3.3.1. Метки функциональных клавиш в формах
- •5.3.3.2. Перемещение в форме и редактирование полей.
- •5.3.4. Перемещение от окна к окну.
- •5.3.4.1. Переход к другому окну с помощью командной строки
- •5.3.4.2. Перемещение от окна к окну с помощью функциональных клавиш
- •5.3.4.3. Перемещение от окна к окну с помощью команды frm-mgmt.
- •5.3.5. Управление внешним видом вашего оффиса
- •5.3.5.1. Перемещение окна
- •5.3.5.2. Изменение формы окна
- •5.3.6. Командное меню
- •5.3.7. Получение помощи
- •5.3.7.1. Помощь по командам, меню и полям форм face
- •5.3.7.2. Получение помощи о face
- •5.3.8. Выход из face
- •6. Редактор текстов ed
- •6.1. Введение
- •6.2. Вызов редактора
- •6.2.1. Дозапись текста
- •6.3. Запись файла
- •6.4. Выход из редактора
- •6.5. Чтение файла
- •6.5.1. Команда редактирования файла (e)
- •6.5.2. Команда чтения файла (r)
- •6.6. Печать текста
- •6.6.1. Команда печати (p)
- •6.6.2. Команда печати (l)
- •6.7. Просмотр файла
- •6.7.1. Команда печати (n)
- •6.8. Команда удаления строк (d)
- •Удаление из буфера строк с 4-й по последнюю включительно. В буфере после выполнения команды останется 3 первых строки. Текущей строкой станет третья строка буфера. 6.9. Команда отмены редакции (u)
- •6.10. Команда замены (s)
- •6.11. Команда поиска контекста
- •6.11.1. Конструкция /.../
- •6.11.2. Конструкция ?...?
- •6.11.3. Продолжение поиска
- •6.12. Команда вставки строк (I)
- •6.13. Команда замены строк (c)
- •6.14. Работа со строками
- •6.14.1. Разбиение строк
- •6.14.2. Объединение строк (j)
- •6.14.3. Копирование строк (t)
- •6.14.4. Перестройка строк
- •6.14.5. Маркеры
- •6.14.6. Адресация строк в редакторе
- •6.14.6.1. Адресная арифметика
- •6.14.6.2. Номера строк и указатель текущей строки
- •6.14.6.3. Изменение указателя текущей строки
- •6.14.6.4. Прерывание работы редактора
- •6.14.7. Глобальные команды
- •6.14.7.1. Команда g
- •6.14.7.2. Команда V
- •Заменить во всех строках файла последовательность "aaa" на "bbb" кроме строк, в которых имеется последовательность "XXX".6.15. Работа с файлами
- •6.15.1. Команда указания имени файла (f)
- •6.15.2. Объединение файлов
- •6.15.3. Разбиение файла
- •6.15.4. Перекомпоновка файла
- •6.15.4.1. Перемещение строк (команда m)
- •6.15.4.2. Копирование строк текста (t)
- •6.16. Специальные символы
- •6.16.1. Метасимвол . (точка)
- •6.16.5. Метасимвол * (звездочка)
- •6.16.6. Метасимволы [] (квадратные скобки)
- •6.16.7. Метасимвол & (амперсенд)
- •6.17.1. Временный выход из редактора
- •6.17.2. Восстановление после останова
- •6.17.3. Командные файлы редактора
- •6.17.4. Режим шифрования
- •6.17.5. Программа grep
- •6.17.6. Команды помощи
- •6.18. Сообщения редактора
- •6.19. Краткий обзор команд
- •7. Экранный редактор VI
- •7.1. Введение
- •7.2.2. Изменение конфигурации
- •7.3. Создание файла
- •Когда вы введете команду VI с именем файла, VI очистит экран и отобразит окно, в которое вы можете вводить и редактировать текст. 7.4. Режимы редактора
- •7.4.1. Создание текста в режиме Append
- •7.4.2. Выход из режима Append
- •7.5. Редактирование текста в командном режиме
- •7.5.1. Перемещение курсора
- •7.5.2. Удаление текста
- •7.5.3. Добавление текста
- •7.6. Завершение работы c VI
- •7.7. Перемещение курсора по экрану
- •7.7.1. Позиционирование курсора на символ
- •7.7.1.1. Переместить курсор в начало или конец строки
- •7.7.1.2. Поиск символа в строке
- •7.7.1.3. Команда перемещения: - (знак минус)
- •7.7.2. Позиционирование слов
- •7.7.3. Позиционирование курсора на предложение
- •7.7.4. Позиционирование курсора по параграфам
- •7.7.5. Позиционирование в окне
- •7.8. Позиционирование курсора на неотображаемом тексте
- •7.8.1. Прокрутка текста
- •7.9. Переход на указанную строку
- •7.10. Номера строк
- •7.11. Поиск символов по шаблону: команды / и ?
- •7.12. Создание текста
- •7.12.1. Добавить текст
- •7.12.2. Вставить текст
- •7.12.3. Открыть строку для текста
- •7.13. Удаление текста
- •7.13.1. Удаление текста в режиме ввода текста
- •7.13.2. Отменить последнюю команду
- •7.14. Команды удаления в командном режиме
- •7.14.1. Удаление слов
- •7.14.2. Удаление параграфов
- •7.14.3. Удаление строк
- •7.14.4. Удаление текста после курсора
- •7.15. Модификация текста
- •7.15.1. Замена текста
- •7.15.2. Подстановка текста
- •7.15.3. Изменение текста
- •7.16. Извлечение и присоединение текста
- •7.16.1. Перемещение текста
- •7.16.2. Перемещение букв
- •7.16.3. Копирование текста
- •7.17. Копирование и перемещение текста с использованием регистров
- •7.18. Специальные команды
- •7.18.1. Повторить последнюю команду
- •7.18.2. Объединение строк
- •7.18.3. Очистить окно и восстановить текст
- •7.18.4. Заменить нижний регистр на верхний и vice versa
- •7.19. Использование команд построчного редактора
- •7.19.1. Временный возврат к shell
- •7.19.2. Запись текста в новый файл
- •7.19.3. Переход к указанной строке
- •7.19.4. Удалить остаток буфера
- •7.19.5. Добавить файл в буфер
- •7.19.6. Провести глобальные изменения
- •7.20. Завершение работы с редактором VI
- •7.21. Специальные опции для VI
- •7.21.1. Восстановление потерянного файла
- •7.21.2. Редактирование нескольких файлов
- •7.21.3. Просмотр файла
- •8. Shell - интерпретатор командного языка
- •8.1. Метасимволы
- •8.1.1. Поиск всех символов (метасимвол *)
- •8.1.2. Поиск по одному символу (метасимвол ?)
- •8.1.3. Поиск одного набора (метасимвол [])
- •8.2. Специальные символы
- •8.2.1. Запуск команды в фоновом режиме (символ &)
- •8.2.2. Последовательное выполнение команд (символ ;)
- •8.2.4. Отмена специального значения (метасимвол кавычки)
- •8.2.4.1. Использование кавычек для отмены значения символа пробел
- •8.3. Перенаправление ввода и вывода
- •8.3.3. Добавить вывод в существующий файл
- •8.3.3.1. Некоторые применения перенаправления вывода
- •8.3.3.2. Комбинирование фонового режима и перенаправления вывода
- •8.3.4. Перенаправление вывода команде
- •8.3.5. Подстановка вывода в качестве аргумента
- •8.4. Выполнение, останов и повторный запуск процессов
- •8.4.1. Запуск команд в заданное время
- •8.4.2. Получить состояние запущенного процесса
- •8.4.3. Завершение активных процессов
- •8.4.4. Запуск остановленного задания
- •8.4.5. Использование команды nohup
- •9. Средства программирования shell
- •9.1. Программы shell
- •9.1.1. Создание простых программ shell
- •9.1.2. Выполнение программ shell
- •9.1.3. Создание справочника bin для исполняемых файлов
- •9.1.4. Ограничения при именовании программ shell
- •9.2. Переменные
- •9.2.1. Позиционные параметры
- •9.2.2. Специальные параметры
- •9.2.3. Именованные переменные
- •9.2.4. Присвоение значений переменным
- •9.2.4.1. Использование команды read
- •9.2.4.2. Перенаправление вывода команды в переменную
- •9.2.4.3. Присвоение позиционного параметра переменной
- •9.3. Конструкции языка программирования shell
- •9.3.1. Комментарии
- •9.3.3. Использование ed в shell программе
- •9.3.4. Коды завершения
- •9.3.4.1. Проверка кодов завершения
- •9.3.5. Циклы
- •9.3.5.1. Оператор for
- •9.3.5.2. Оператор while
- •9.3.6. Использование /dev/null
- •9.3.7. Условные операторы
- •9.3.8. Безусловная передача управления
- •9.4. Отладка программы
- •9.4.1. Модификация окружения
- •9.4.2. Добавление команд в файл .Profile
- •9.4.3. Установка характеристик терминала
- •9.5. Использование shell переменных
- •10.1. Основные сведения об awk
- •10.1.1. Структура программы
- •10.1.2. Поля
- •10.1.3. Печать
- •10.2. Печать форматированного файла
- •10.3. Простые шаблоны
- •10.4. Простые действия
- •10.4.1. Встроенные переменные
- •10.4.2. Определенные пользователем переменные
- •10.4.2.1. Функции
- •10.5. Примеры некоторых полезных программ
- •10.6. Сообщения об ошибках
- •10.7. Шаблоны
- •10.7.1. Шаблоны begin и end
- •10.8. Выражения отношения
- •10.9. Регулярные выражения
- •10.10. Комбинация шаблонов
- •10.11. Область шаблона
- •10.12. Действие
- •10.12.1. Арифметические действия
- •10.13. Строки и строковые функции
- •10.14. Поле переменных
- •10.15. Номер или строка
- •10.16. Операторы управления потоком
- •10.17. Массивы
- •10.18. Функции, определенные пользователем
- •10.19. Комментарии
- •10.20. Вывод
- •10.20.1. Оператор print
- •10.20.2. Разделители вывода
- •10.20.3. Оператор printf
- •10.20.4. Вывод в файлы
- •10.20.5. Вывод в канал
- •10.21. Ввод
- •10.21.1. Файлы и каналы
- •10.21.2. Разделители ввода
- •10.22. Многострочные записи
- •10.23. Функция getline
- •10.24. Аргументы командной строки
- •10.25. Использование awk с другими командами и с shell
- •10.25.1. Функция system
- •10.25.2. Взаимодействие с shell
- •10.26. Примеры использования
- •10.26.1. Генерирование отчетов
- •10.26.2. Дополнительные примеры
- •10.26.2.1. Частота использования слов
- •10.26.2.2. Накопление
- •10.26.2.3. Случайный выбор
- •10.26.2.4. Возможности shell
- •10.27. Итоговое краткое описание awk
- •10.27.1. Ограничения
- •10.27.2. Инициализация, сравнение и тип приведения
- •Приложение 1. Файловая система unix
- •Справочники системы unix
- •Приложение 2. Основные команды системы unix
5.3.3. Как работать с формой
Вторым типом окна в FACE является форма. Форма выглядит подобно бланку, который надо заполнить. На рис. 8 показано, как выглядит одна из форм в FACE (форма "Display Frames"). tes 23
Форма Display Frames
------------------------------------------------------------
AT&T FACE - JUN 19, 1989
-----------------------
| 3 Diaplay Frames Form |
-----------------------
| Fist Frame :________ |
| Second Frame:________ |
| Third Frame :________ |
| Fourth Frame:________ |
-----------------------
------------------------------------------------------------------
|HELP||CHOICES||SAVE||PREV-FRM||NEXT-FRM||CANCEL||CMD-MENU||RESET|
------------------------------------------------------------------
------------------------------------------------------------------
Рис. 8.
Информация, которую вы вводите в поля формы, используется оболочкой FACE для изменения внешнего вида вашего FACE оффиса, или для изменения того, что делает команда FACE. На рис. 8, вы можете вводить информацию в поля "First Frame", "Second Frame", "Third Frame" и "Fourth Frame" (Первое Окно, Второе Окно, Третье Окно и Четвертое Окно, соответственно). (Как заполнять эту форму описывается в разделе "Изменение других параметров оффиса).
Следует помнить, что формы часто появляются с некоторыми значениями по умолчанию в большинстве полей. (Значение по умолчанию - это значение, помещаемое в поле автоматически средой FACE и остающееся постоянным, если вы его не измените.)
5.3.3.1. Метки функциональных клавиш в формах
Формы имеют другой набор функциональных клавиш в отличие от меню. Они показаны на рис. 9. Заметьте, что так как в формах доступны только восемь функциональных клавиш, клавиша F8 не резервируется для переключения уровней, как в меню. Вы увидите, что метки функциональных клавиш меняются, когда вы будете практиковаться в перемещениях и редактировании в форме.
Функциональные клавиши, доступные в формах
---------------------------------------------------
Function Key
----------------
F1 HELP
F2 CHOICES
F3 SAVE
F4 PREV-FRM
F5 NEXT-FRM
F6 CANCEL
F7 CMD-MENU
F8 RESET
---------------------------------------------------
Рис. 9.
Три функциональные клавиши (CHOICES, SAVE и RESET) отсутствуют в меню. Функциональная клавиша CHOICES покажет допустимые значения текущего поля. (Если появится сообщение "No choices available" - "Нет допустимых значений" в строке сообщения, это означает, что вы должны ввести допустимые значения для поля.) Функциональная клавиша RESET восстанавливает значение текущего поля, которое было до вашего редактирования. Функциональная клавиша SAVE сохраняет значение всех полей и закрывает форму.
5.3.3.2. Перемещение в форме и редактирование полей.
Так как вы вводите новую информацию в форму или меняете информацию в некоторых полях, а также перемещаетесь от поля к полю, вы нуждаетесь в средствах редактирования и перемещения. Для перемещения внутри формы и редактирования некоторые из именованных клавиш работают в формах по-другому, чем в меню. Клавиши используемые внутри форм приведены на рис. 10.
Помните, что если ваша клавиатура не имеет некоторых из этих именованных клавиш (или они не работают), вы можете использовать альтернативные последовательности.
Клавиши перемещения, используемые в формах
Именованная клавиша |
Альтерн. послед. |
Действие |
Стрелка вниз |
CTRL-d |
Перемещает курсор вниз к следующему полю. Если курсор - в последнем поле, текущим становится первое поле |
Стрелка вверх |
CTRL-u |
Перемещает курсор вверх к предыдущему полю. Если курсор - в первом поле, то текущим становится последнее поле |
-> |
CTRL-r |
Перемещает курсор вправо на один символ внутри поля без изменения содержимого поля. Перехода к следующему полю не осуществляется |
<- |
CTRL-l |
Перемещает курсор влево на один символ внутри поля без изменения содержимого поля. Перехода к следующему полю не осуществляется |
TAB |
CTRL-i |
Перемещает курсор к следующему полю в форме. Если курсор - в последнем поле, текущим становится первое поле |
BACKTAB |
CTRL-t |
Перемещает курсор к предыдущему полю в форме. Если курсор - в первом поле, то текущим становится последнее поле |
HOME BEG |
CTRL-f b CTRL-b |
Перемещает курсор в первую позицию текущего поля |
HOME-DOWN END |
CTRL-f e CTRL-e |
Перемещает курсор в последнюю позицию текущего поля |
BACKSPACE |
CTRL-h |
Перемещает курсор влево, удаляя символ слева |
SPACEBAR |
нет |
Заменяет текущий символ на пробел и перемещает курсор на один символ вправо |
DEL или DELETE-CHAR |
CTRL-x |
Удаляет символ над курсором сдвигая остаток строки |
DELETE-LINE |
CTRL-k |
Удаляет текущую строку в поле, перемещая остаток текста вверх на одну строку. Если поле состоит из одной строки, клавиша действует также как CLEAR-LINE |
RESET |
CTRL-f r |
Восстанавливает предыдущее значение поля |
CLEAR-EOL |
CTRL-f y |
Чистит строку с текущей позиции до конца строки |
CLEAR CLEAR-LINE |
CTRL-y |
Чистит текущую строку в текущем поле |
Рис. 10.
В следующем примере вы научитесь перемещению в форме Office Functions (функции оффиса) и редактированию его полей. Помните, что в FACE "выбрать" означает, нужно перейти к пункту меню и нажать ENTER.
Если курсор выглядит в виде знака подчеркивания (_), его бывает трудно различить при использовании форм, так как поля по умолчанию подчеркнуты.
Если вы решили ввести новое значение в поле, первый введенный символ очистит все поле. Если первым символом, который вы ввели является пробел, будет похоже что поле пустое, но это не так. В начале строки присутствует символ пробела и курсор находится во второй позиции этой строки. Если вы забудете удалить этот первый пробел, поле будет выглядеть правильно, но возможно не будет правильно работать.
Выберите "Preferences" из меню "Office of login".
Выберите "Office Functions" из меню "Preferences". Форма "Office Functions" появится на экране. Эта форма имеет семь полей и курсор позиционируется на первое поле "Delete objects in my Wastebasket after (# of days)" ("Удалить обьекты из корзины для бумаг через # дней). Значением по умолчанию для данного поля является 1. Заметьте, что метки функциональных клавиш внизу экрана изменились. Строка сообщения указывает допустимые значения для данного поля.
Введите 32 в это поле и нажмите ENTER. Обратите внимание что появилось сообщение "Input is not valid" ("недопустимое значение") и курсор не переместился к следующему полю. Если FACE обнаружит, что новое значение, которое вы пытаетесь ввести в поле, недопустимо (здесь 32), вы не сможете выйти из поля до тех пор, пока поле содержит недопустимое значение. Вы можете использовать это поле, чтобы проверить некоторые клавиши редактирования, приведенные на рис. 10, такие как BACKSPACE или DELETE-CHAR.
Нажмите RESET (или CTRL-f 8) для восстановления предыдущего значения этого поля. RESET действует только на текущее поле
Перейдите к полю "Prompt before deleting ..." ("Подтверждение перед удалением"). Значение по умолчанию в этом поле "yes". Нажмите CHOICES (или CTRL-f 2). Значение в поле изменится на "no".
Нажмите CHOICES еще раз и значение в поле опять изменится на "yes".
Нажмите клавишу "стрелка вниз" для перехода к полю "Display Folder Format:" ("Формат изображения набора:"). Значение по умолчанию в этом поле "Name only" ("Только имя").
Нажмите CHOICES (или CTRL-f 2) еще раз. На этот раз на экране появится меню "Choices" ("Выбор"). Клавиша CHOICES (или CTRL-f 2) будет показывать допустимые значения для поля сменой значений в самом поле если есть менее четырех допустимых значений. Если допустимых значений - четыре или больше, они выводятся в меню "Choices". Меню "Choices" несколько отличается от других меню. Во-первых, доступны только две функциональные клавиши: ENTER и CANCEL. Во-вторых, выбор пункта в меню "Choices" не открывает другое окно. Выбраный пункт просто вводится в поле формы.
Нажмите функциональную клавишу с меткой ENTER (или CTRL-f 3), для выбора любого значения из меню "Choices". (Вы можете также нажать RETURN или CTRL-m чтобы выбрать пункт меню "Choices".) Меню "Choices" исчезает и выбранное значение помещается в поле "Folder Display Format:".
Нажмите CANCEL (или CTRL-f 6), которая аннулирует любые изменения, которые вы могли сделать во всех полях формы "Office Functions" и закрывает ее, возвращая вас в меню "Preferences".
Нажмите CTRL-j, для доступа к командной строке, введите "cancel" и нажмите ENTER. Меню "Preferences" закроется и вы вернетесь в "Office" меню. Когда вы вводите "cancel" в командной строке, FACE делает то же, что и при нажатии CANCEL (или CTRL-f 6). На самом деле, когда вы нажимаете CANCEL, FACE просто выполняет команду "cancel". То есть, закрывает текущее окно и удаляет его из рабочей области.
Нажмите CANCEL (или CTRL-f 6), чтобы закрыть окно "Office" и вернуться в главное FACE меню.