- •Операционная система 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
2.7. Использование специальных символов как буквенных
Что получится, если вы захотите использовать буквенное значение специальных символов? Так как по умолчанию система UNIX интерпретирует специальные символы как команды, то вы должны сказать системе, что нужно игнорировать специальные значения символов, если хотите использовать их как буквенные символы. Обратная косая черта (\) позволяет вам сделать это. Введите \ перед любым специальным символом, с которым вы хотите обращаться в его неизменном виде. Например, вы хотите добавить следующее предложение в файл:
He bought three pounds @ $.05 cents each
Чтобы предотвратить интерпретацию системой UNIX знака @ как запрос на удаление символа, поставьте обратную косую черту перед знаком @. Если вы этого не сделаете, то система удалит все слова перед знаком @ и вы получите следующее предложение:
$.05 cents each
Чтобы избежать это, введите предложение в следующем виде:
He bought three pounds \@ $.05 cents each
2.8. Скорость
После того, как на экране терминала появится подсказка, вы можете осуществлять ввод с любой удобной вам скоростью, даже когда система UNIX выполняет команду или отвечает на нее. Так как ваш ввод и системный вывод появляются на экране одновременно, то появляющаяся на экране информация будет искажаться. Хотя для вас это будет неудобно, для работы системы INIX это не помеха, потому что система UNIX имеет возможность чтения вперед (?). Эта возможность позволяет системе управлять раздельно вводом и выводом. Система принимает и сохраняет ввод (ваш следующий запрос), на то время, пока посылает вывод (ответ на ваш последний запрос) на экран.
2.9. Останов команд
Чтобы остановить выполнение большинства команд, просто нажмите клавишу <BREAK> или <DELETE>. Система UNIX остановит выполнение программы и напечатает подсказку на экране. Это подсказка служит сигналом, что последняя запущенная на выполнение команда остановлена и система готова к приему следующей команды.
2.10. Использование символов управления
Найдите на клавиатуре клавишу управления. Обычно она помечается CONTROL или CTRL, и возможно находится либо левее буквы A или ниже буквы Z. Клавиша управления используется в комбинации с другими символами для выполнения некоторых действий над вводимой строкой. Вводимые таким образом команды называются символами управления. Некоторые управляющие символы выполняют те же действия, что и клавиши <BACKSPACE> и <TAB>. Другие определяют команды, которые являются специфичными для системы UNIX. Например, только управляющий символ (по умолчанию ^s) временно останавливает вывод, который печатался на экране терминала.
Чтобы ввести управляющий символ, нажмите одновременно сооответствующую буквенную клавишу и клавишу управления. Так как большинство управляющих символов не появляются на экране терминала при вводе, то они в документации приводятся в угловых скобках. Клавиша управления представляется в виде знака ^, стоящего перед буквой. Например, <^s> означает, что нужно одновременно нажать клавишу с буквой s и управляющую клавишу.
Для двух функций наиболее часто используются управляющие символы: вывод на экран и выход из системы. Чтобы приостановить вывод нинформации на экран видеотерминала, нажмите <^s>. Когда вы будете готовы прочитать следующую порцию информации, нажмите <^g> и вывод возобновится.
Чтобы завершить работу с системой UNIX, нажмите <^d>.
В дополнение, система UNIX использует управляющие символы для обеспечения тех возможностей, которые некоторые терминалы не могут выполнить посредством специальных клавиш. Если ваша клавиатура не имеет клавиши <BACKSPACE>, вы можете вместо нее воспользоваться клавишами <^h>. Вы можете вместо отсутствующей клавиши <TAB> воспользоваться клавишами <^i>.
Теперь, когда вы настроили терминал и изучили клавиатуру, вам осталось сделать еще один шаг, чтобы связаться с системой UNIX: вы должны получить регистрационное имя.