WRITE(1) WRITE(1) НАЗВАНИЕ write - передача сообщений другому пользователю СИНТАКСИС |write пользователь [линия] ОПИСАНИЕ Команда write копирует строки с Вашего терминала на терминал другого пользователя. Команда прежде всего по- сылает адресату сообщение: |Message from Ваше_имя (tty??) [дата]... Как только связь будет успешно установлена, два звонка известят Вас о том, что вводимая Вами информация будет пересылаться. В этот момент адресату следует послать Вам ответное со- общение. Сеанс связи будет продолжаться до тех пор, по- ка с Вашего терминала не будет считан символ конца фай- ла, не будет послано прерывание или адресат не выполнит команду mesg -n, после чего команда write передаст со- общение EOT (конец передачи) на другой терминал и за- вершит свое выполнение. Если Вы хотите передавать сообщения пользователю, кото- рый вошел в систему более одного раза, то указать, с какой именно линией или терминалом следует установить связь, можно посредством аргумента линия (например, tty10); иначе адрес будет определен по первому упомина- нию о пользователе в файле /etc/utmp, а Вам будет выда- но сообщение: |пользователь is logged on more than one place. |You are connected to терминал |Other locations are: |терминал Пользователь может разрешить или запретить передачу со- общений на свой терминал, используя команду mesg(1). Передача сообщений в режиме по умолчанию разрешена. Не- которые команды, в частности pr(1), блокируют прием общений с тем, чтобы воспрепятствовать смешиванию сооб щений с выводимой ими информацией; однако, если пользо ватель обладает правами суперпользователя, то он може осуществлять передачу принудительно, несмотря на уста новленный адресатом запрет приема сообщений на терми нал. Если строка начинается с символа !, то команда write вызывает shell для исполнения остальной части строки как команды. При использовании команды write рекомендуется придержи ваться следующего протокола: если Вы только что выдали команду write, то дождитесь ответа адресата, прежде чем что-либо ему передавать. Каждый должен заканчивать со- общение каким-нибудь четко различимым признаком конца [например, (o) вместо "over" - конец сообщения], чтобы партнер знал, когда отвечать. В качестве признака за- вершения сеанса связи рекомендуется передавать (oo) (вместо "over and out" - конец сообщения и сеанса). ФАЙЛЫ /etc/utmp Для идентификации пользователя. /bin/sh для отработки "!". СМ. ТАКЖЕ mail(1), mesg(1), pr(1), sh(1), who(1). ДИАГНОСТИКА Пользователь not logged in Пользователь, которому Вы пытаетесь передать сооб- щение, не работает в системе. Permission denied Пользователь, которому Вы пытаетесь передать сооб- щение, не дает на это разрешения. Warning: cannot respond, set mesg -y Ваш терминал находится в режиме mesg -n и адресат не может вам ответить. Can no longer write to user Адресат отменил разрешение (посредством mesg -n после того, как Вы начали передачу сообщения.