Разделы:

Главная

О проекте

Загрузки

Документация:

Linux

BSD

Другие Unix

Программинг

HTML, XML...

Сервера

"Окна Закрой!"

MANы

 



9. СВЯЗЬ ПОЛЬЗОВАТЕЛЬ-ПОЛЬЗОВАТЕЛЬ

Система UNIX предполагает возможность коллективной работы и кооперации пользователей. Это требует развитых средств связи пользователей между собой. В системе имеются следующие средства:
- команда write для непосредственной посылки сообщения другому пользователю;
- средство mail, реализующее электронную почту. 9.1. Посылка сообщений командой write
Команда write посылает сообщение указанному пользователю в момент исполнения этой команды. Это означает, что адресат должен работать в системе в этот момент. Не многим нравится, когда сообщение приходит, как в данном случае, в случайный момент, в особенности во время набора собственного текста. Поэтому вы должны быть уверены в необходимости такого немед- ленного взаимодействия.
Типичный пример:
   $ write boris
   Спасайся, красные окружили Белый Дом!!!
   ^D
   $

Сообщение заканчивается вводом знака конца файла control-D.
Адресат увидит у себя на экране:
Message from george tty 00 ...
Спасайся, красные окружили Белый Дом!!!
EOF
Если вы намерены ждать ответа и вести диалог, можно не вводить знак конца файла до конца диалога.
Пример:
   $ write mary
   Поужинаем сегодня вечером?
   Извини, сегодня я иду громить памятники.          (ответ)
   Тогда завтра?
   И завтра не могу. Давай на следующей неделе?      (ответ)
   Ну, хорошо.
   EOF                                               (ответ)
   ^D
   $


Получаемые от абонента тексты помечены словом (ответ). На стороне абонента на экране будет:
$ Massage from peter tty 03 ...
Поужинаем сегодня вечером?
Извини, сегодня я иду громить памятники. Тогда завтра?
И завтра не могу. Давай на следующей неделе? (ответ) Ну, хорошо.
^D
$

Чтобы узнать, работает ли абонент в системе в данный мо- мент, введите команду who. Пример:
   $ who
   george tty  00  08:30
   peter  tty  03  08:31
   boris  tty  07  04:12
   mary   tty  08  09:01

Текст сообщения можно взять из файла, перенаправляя стан- дартный ввод для write из этого файла.
Пример (сообщение из файла message):
write peter < message
Текст сообщения можно формировать, выполняя команды внут- ри текста. В этом случае команде предшествует восклицатель- ный знак, например:
   $ write peter
   Нужные тебе файлы в каталоге:
   !pwd
   /users/mary/docs/specs
   !
   /users/mary/docs/specs
   ^D
   

Ответ команды завершается тоже восклицательным знаком. Ни команда, ни ответ в текст сообщения не попадают. Если вы не уверены, что полученные сообщения не нарушат вашу работу (например, ввод текстового файла), вы можете закрыться от посылаемых вам сообщений командой mesg:
$ mesg n
$
где n - от no (нет).
Когда вы решите, что уже способны получать сообщения, по- дайте:
$ mesg y
где y - от yes (да).
Эта же команда без параметров подскажет вам, в каком сос- тоянии по приему сообщений вы находились (no или yes), нап- ример:
$ mesg
is y
т.е. прием разрешен. При входе в систему устанавливается состояние y.


9.2. Электронная почта (mail)

Электронная почта - это средство, позволяющее пользовате- лям посылать друг другу сообщения, которые складываются в почтовые ящики, реализованные внутри системы. Когда вы входите в систему, вас извещают о наличии для вас почты, например:
login: mary
password: ...
you have mail
$
В отличие от write в системе mail о приходе для вас почты вас известят, когда вы закончите текущую работу, печатая со- общение:
you have mail (для вас есть почта).
Для получения почты введите команду mail без параметров: $ mail
Form peter Wed Jun 9 17:58:23 1991
Завтра в 16:30 можно поиграть в теннис.
Где встретимся?
?
Подсказка (?) означает, что система mail ждет указания о том, что делать с почтой: печатать, сохранить, уничтожить или выйти из команды mail.
Введя знак вопроса, вы получите меню возможных действий: ??
q quit - закончить;
x exit without changing mail - выйти без изменения почты;
p print - печатать;
s [file] save - сохранить в файле;
w [file] same without header - то же без заголовка;
- print previous - печатать предыдущее;
d delete - уничтожить;
+ next (no delete) - следующее (не уничтожать);
m user mail to user - переправить другому пользователю;
!cmd execute cmd - выполнить команду;
?
Кроме этих десяти действий вы можете также ввести control-D (то же, что и q) или нажать клавишу возврата ка- ретки.
При сохранении почты в файле на экране высвечивается сле- дующее письмо, если оно есть:
? s from_peter
From peter
...........
?
Можно переслать данное письмо другим пользователям.
Например:
? m mary boris george
?
Для посылки почты введите команду mail с параметром - именем пользователя и введите текст письма, заканчивая его знаком конца файла (control-D).
Например:
   $ mail peter
   Извини, я не смогу играть завтра.
   Мне надо получить талоны на сахар и табак.
   ^D
   $

Посылка ответа может быть произведена при просмотре почты. Например:
?! mail peter
Извини, я .....
..........
^D
!
?
Для просмотра почты из файла введите команду mail с клю- чом - f:
$ mail -f from_peter
Для выхода из системы mail наберите q. Например:
   ? q
   you have mail
   $.
   Работа с почтой закончена.


далее     содержание


Партнёры и спонсоры проекта:

Все материалы сайта распространяются по лицензии GNU/GPL
© ProUNIX 2003-2009, UnixLib 2005-2009, SoftLib 2006-2009.