- •Операционная система 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.5. Подсказка команды
Стандартной подсказкой команды в системе UNIX является знак доллара $. Когда подсказка появляется на экране вашего терминала, то это означает, что система UNIX ожидает инструкции от вас. Соответствующим ответом на подсказку с вашей стороны является выдача команды с последующим нажатием клавиши <RETURN>. Знак доллара $ является значением по умолчанию подсказки команды.
2.6. Исправление ошибок ввода
Существует несколько способов исправления ошибок ввода. Символ @ стирает текущую строку, а клавиша <BACKSPACE> и <^h> стирает последний введенный символ. Эти клавиши и знаки являются значениями по умолчанию. Функции, которые они выполняют, могут быть переназначены другим клавишам.
2.6.1. Стереть текущую строку: знак @
Когда вы нажимаете клавишу @, то знак @ добавляется в конец строки и курсор перемещается на новую строку. Строка, содержащая ошибку, не стирается с экрана, но она игнорируется.
Знак @ работает только на текущей строке. В следующем примере сделана орфографическая ошибка при вводе командной строки.
Пример.
whooo@
тогда введите символ @ и затем введите правильно команду:
who<CR>
2.6.2. Стереть последний введенный символ: <^h> и <BACKSPACE>
<^h> и <BACKSPACE> стирают последний введенный символ в текущей строке. Когда вы нажимаете одну из этих клавиш, то курсор возвратится на последний символ и предоставит вам возможность заново его ввести. Этот способ является самым легким для исправления ошибки ввода.
Таким способом вы можете удалить несколько символов. Например, в следующем примере стираются два символа с помощью клавиши <BACKSPACE>:
Пример.
dattw<BACKSPACE><BACKSPACE>e<CR>
Система UNIX будет интерпретировать эту строку, как правильно введенную команду date.
2.6.3. Переназначение функции удаления
Вы можете заменить клавиши, которые удаляют строку и стирают символы. Если вы хотите сделать эту замену для одной рабочей сессии, то вы можете выдать команду для shell: сделать переназначение. После того как вы выйдете из системы, значение этих величин по умолчанию станет прежним. Если вы хотите использовать новые клавиши постоянно, то вы должны указать это переназначение в файле, называемом .profile.
Прежде чем начать переназначение функций удаления, вы должны учесть 3 момента. Первое, когда вы переназначаете на клавишу, используемую по умолчанию, тем самым вы можете лишиться функции, используемой клавишей по умолчанию. Например, если вы переназначили функцию стирания с клавиши <BACKSPACE> на клавишу #, то вы не сможете воспользоваться клавишей <BACKSPACE> для стирания символа. Но также вы можете иметь две клавиши, которые выполняют одну функцию.
Второе, такие переназначения наследуются любой другой программой системы UNIX, которая позволяет вам выполнить функцию, которую вы переназначили. Например, интерактивный редактор текста, названный ed, позволяет вам удалять текст той же клавишей, которую вы используете для исправления ошибок в командной строке shell. Таким образом, если вы переназначили функцию стирания на знак #, то вы также будете использовать этот знак для стирания символов, когда будете работать в редакторе ed. И при этом переназначении клавиша <BACKSPACE> не будет работать.
И третье, помните, что любое переназначение, которое вы выполните в вашем файле .profile не станет действенным, пока вы заново не войдете в систему. И кроме того, если сделаете ошибку при вводе вашего регистрационного имени или пароля, вы должны использовать прежнюю клавишу <BACKSPACE> для ее исправления.
Какую бы клавишу вы ни использовали помните, что она работает только на текущей строке. Убедитесь, что корректируете вашу ошибку до нажатия клавиши <RETURN>.