- •«Операционные системы.Командный интерфейс» конспект лекций Тема 1. Введение. Содержание курса
- •Тема 2. Классификация режимов работы ос
- •Диалоговый пакетный
- •Тема 3. Виды нтерфейсов пользователя ос unix
- •Тема 4. Обобщенные принцпы построения современных ос
- •Тема 5. Состав ос unix
- •Тема 6. Среда для работы пользователя
- •Тема 7. Регистрация пользователя в системе
- •Тема 8. Группа коммуникационных команд
- •Тема 9. Группа вспомогательных команд
- •Тема 10. Перенаправление ввода-вывода
- •Файловая система unix
- •Тема 11. Файлы unix
- •Тема 12. Генерация имен файлов
- •Тема 13. Структура системы каталогов unix
- •Тема 14. Управление каталогами в unix
- •Тема 15. Команды поиска файлов в системе каталогов
- •Тема 16. Управление файлами
- •Тема 17. Управление правами доступа к файлам и каталогам
- •Здесь файл fil1.C, владельцем которого является пользова-
- •Тема 18. Конвееры и фильтры
- •Тема 19. Создание и редактирование текстовых файлов
- •Команды удаления текста
- •Введение в shell- программирование
- •Тема 20. Операторы – команды
- •В unix при написании операторов важное значение отводится
- •Тема 21. Управление локальными переменными
- •Тема 22. Подстановка значений переменных
- •Тема 23. Экспортирование локальных переменных в среду shell
- •Тема 24. Проверка условий
- •2. Сравнение числовых значений:
- •3. Сравнение строк:
- •If список_команд1
- •Тема 25. Построение циклов
- •Тема 26. Управление процессами в unix
- •Тема 27. Создание фоновых процессов
- •Тема 28. Управление приоритетами
- •Тема 29. Завершение процессов
- •Тема 30. Перехватывание сигналов
- •Тема 31. Сетевые средства unix
Тема 8. Группа коммуникационных команд
Рассматриваемая группа команд позволяет организовать
взаимодействие между процессами нескольких пользователей. Обмен сообщениями между пользователями может быть начат по инициативе любого из пользователей.
Для уточнения реквизитов адресата можно воспользоваться
командой:
who - кто работает с системой ?
$ who
””””””””””””””””””””””””””””””””””””
lev tty4i Feb 11 18:47
petr11 tty12 Feb 11 16:00
”””””””””””””””””””””””””””””””””””””
$
Команда who в каждой строке своего сообщения выводит имя
очередного пользователя, номер терминала, за которым он работает, дату и время начала работы этого пользователя.
$ who am i
””””””””””””””””””””””””””””””””””””
lev tty4i Mar 11 18:47
””””””””””””””””””””””””””””””””””””
$
Для посылки текстового сообщений пользователю-адресату
пользователь-отправитель может воспользоваться командой:
write – послать абоненту сообщение
$ write petr11
Text of my message
for user petr11
<Ctrl*D>
$
Результатом работы команды является "вторжение" на экран
адресата приоритетного по отношению к текущей экранной выдаче
приглашения к общению с отправителем и текст передаваемого сообщения с идентификатором конца сообщения <EOT>:
””””””””””””””””””””””””””””””””””””””””””””””””””””””””””””””
Message from lev on U01 (tty4i) [ Thu Mar 11 19:10:33 ] ..
Text of my message
for user petr11
<EOT>
””””””””””””””””””””””””””””””””””””””””””””””””””””””””””””””
Передаваемый текст может быть перенаправлен на вход команды write из предварительно подготовленного текстового файла filetext:
$ write petr11 < filetext
$
Если отправитель обращается к неработающему в настоящее
время пользователю-адресату, то работа команды write завершается выдачей системного сообщения об ошибке:
””””””””””””””””””””””””””””””””””””
<имя_пользователя> is not logged on
””””””””””””””””””””””””””””””””””””
Блокирование выдачи на собственный экран несанкционированных сообщений других пользователей может осуществляться с помощью команды:
$ mesg n
< прием сообщений блокирован >
$ mesg y
< прием сообщений разрешен >
$
Многопользовательская ОС UNIX предоставляет возможности
для организации электронной почты на базе команды:
mail - отправка или чтение почты
Команда mail имеет множество модификаций, задаваемых ключами и аргументами команды, предоставляя мощные средства поддержки разнообразных форм взаимодействия: от организации обмена сообщениями с их хранением в "почтовом ящике" до формирования и редактирования самих сообщений.
Роль почтового ящик выполняет специальный системный файл.
Каждое сообщение сопровождается заголовком, идентифицирующим пользователя-отправителя. Если при очередном входе пользователя в систему в почтовом ящике для него есть хотя бы одно сообщение, то систем выводитна экран:
”””””””””””””
You have mail
”””””””””””””
Дальнейшие действия пользователя подразумевают следующий
диалог:
””””””””””””””””””””””””””””””””””””””
From petr11 Thu Mar 11 19:10 MDT 2005
< Текст сообщения >
””””””””””””””””””””””””””””””””””””””
?
Последняя строка сообщения представляет собой приглашение
системы mail '?' для ввода следующей команды, определяющей, что
надо делать с прочитанными сообщениями. Возможны команды:
<+> - вывод на экран следующего сообщения;
<-> - вывод предыдущего;
<d> - удалить текущее сообщение,
<q> - сохранить в буфере,
<S [файл]> – сохранить в файле (по умолчанию – файл «mbox»)
<![команда]> - выполнение команды ОС не выходя из утилиты mail
После этого автоматически выводится очередное сообщение со своим заголовком и следующее за ним приглашение
'?'.
Если в "почтовом ящике" нет сообщений для Вас, то протокол
работы с mail будет выглядеть так:
””””””””
No mail.
””””””””
$
Для формирования и посылки Ваших посланий в качестве аргументов указываются входные имена пользователей-адресатов:
$ mail petr11 ira ivan
< Общий текст сообщения всем адресатам >
<Ctrl*D>
$
Текст сообщения может быть передан из текстового файл ,
также как и в команде write.
