MAIL(1)
MAIL(1)
НАЗВАНИЕ
mail - отправка пользователям почты или ее чтение
СИНТАКСИС
mail [-o] [-s] [-w] [-t] адресат ... mail [-e] [-h] [-p] [-q] [-r] [-f файл] [-F адресат ...]
ОПИСАНИЕ
Отправка почты
На отправку почты воздействуют следующие опции:
-o Подавить оптимизацию адреса.
-s Не вставлять перевод строки в начало отправляемого письма (см. ниже ПРЕДОСТЕРЕЖЕНИЯ).
-w Отправить письмо удаленному пользователю без ожидания завершения пересылки.
-t Добавить к письму строку "To: адресаты", что позволяет получателю знать всех адресатов письма.
Адресат обычно задается как входное имя пользователя [см. ]. Если адресат задан, предполагается, что выполняется отправка почты (за исключением случая опции -F). При этом текст отправляемого сообщения читается со стандартного ввода, пока либо не будет введен символ конца файла (CTRL+D), либо не будет введена строка, состоящая из единственной точки. Затем команда mail добавляет письмо к почтовому файлу каждого из адресатов. Письмо - это сообщение, перед которым стоит почтовый штемпель. Почтовый штемпель состоит из одной или нескольких строк "From ...", за которыми идет пустая строка (если только не была использована опция -s).
Если будет обнаружено, что письмо не может быть доставлено, то оно вернется к отправителю с диагностикой места и причины неудачи. Если во время ввода сообщения нажать клавишу прерывания, сообщение будет сохранено в файле dead.letter, что позволяет в будущем отредактировать и отправить его. Этот файл обновляется каждый раз, когда он необходим.
Если локальная система входит в стандартную коммуникационную сеть (см. команды подраздела 1C), можно отправить почту пользователю удаленной системы, адрес которого задается обычным для сети образом:
имя_системы![имя_системы! ...]имя_пользователя
Чтение почты
На чтение почты воздействуют следующие опции:
-e Установка кода завершения без вывода почты. Нулевое значение кода завершения означает, что у пользователя есть почта, в противном случае возвращается 1.
-h Показ окна с заголовками писем, а не текстов писем. Затем выдается приглашение "?".
-p Вывод текстов всех писем без промежуточных приглашений.
-q Завершить работу команды mail после получения прерывания. В противном случае прерывание вызывает лишь прекращение вывода текста письма.
-r Выводить тексты писем в порядке поступления.
-f файл Использовать файл вместо подразумеваемого почтового файла.
-F адресат Вызывает переадресацию последующей почты указанному адресату. Опция допустима, только когда у пользователя нет почты.
По умолчанию команда mail выводит тексты писем в порядке, обратном к порядку их поступления, то есть сначала выдается самая свежая почта. После выполнения очередного действия происходит либо выход из mail, если было обработано последнее письмо, либо выдается приглашение (символ "?") и со стандартного ввода читается строка, определяющая следующую команду. Для обработки и просмотра почты доступны следующие команды:
перевод_строки, + или n Перейти к следующему письму.
d или dp Удалить письмо и перейти к следующему. Как и в двух последующих командах, собственно удаление произойдет лишь в конце сеанса работы с mail.
d n Удалить письмо с номером n (письма нумеруются с 1, в порядке поступления). Не переходить к следующему письму.
dq Удалить письмо и выйти из mail.
h Показать заголовки писем, расположенных в окрестности текущего.
h n Показать заголовок письма с номером n.
h a Показать заголовки всех писем в пользовательском почтовом файле.
h d Показать заголовки писем, отмеченных на удаление.
p Снова показать текущее письмо.
- Показать предыдущее письмо.
a Показать письмо, пришедшее во время сеанса работы с mail.
n Показать письмо с номером n.
r [адресат ...] Ответить отправителю письма и другим адресатам, затем удалить сообщение.
s [файл ...] Сохранить письмо в указанных файлах (по умолчанию используется файл $HOME/mbox). Из почтового файла письмо удаляется.
y [файл ...] То же, что и предыдущая команда.
u [n] Снять отметку об удалении с письма номер n (по умолчанию используется номер последнего прочитан ного).
w [файл ...] Сохранить в указанных файлах только сообщение (без почтового штемпеля). По умолчанию используется файл $HOME/mbox.
m [адресат ...] Переслать текущее письмо указанным адресатам.
q или CTRL+D Оставить в почтовом файле только неудаленные письма и завершить сеанс работы с командой mail.
x Оставить почтовый файл неизменным и завершить сеанс работы с командой mail.
! команда Выполнить одну команду shell'а.
? Показать перечень команд.
При входе в систему пользователю сообщается о наличии для него почты, если она есть. Также сообщается о появлении новой почты во время сеанса работы с командой mail.
Для видоизменения работы команды mail существует два способа обращения с почтовым файлом. Чтобы обеспечить необходимый уровень секретности, следует дать прочим пользователям право либо на чтение/запись этого файла, либо только на чтение, либо не дать никаких прав. Если режим доступа к почтовому файлу отличается от стандартного, файл будет сохранен, даже если станет пустым.
Если первой строкой почтового файла является
Forward to адресат
приходящая текущему пользователю почта будет пересылаться адресату. В этом случае к почтовому штемпелю будет добавлена строка "Forwarded by ...". Эта возможность полезна в рамках сети, чтобы собирать почту на одной машине и иметь информацию о том, какие письма и откуда пересылались. Установление и отмена режима переадресации производится посредством опции -F. Можно задать список адресатов, которым будет пересылаться почта. Элементы списка разделяются запятыми или пробелами, весь список заключается в кавычки. Длина списка - до 1024 байт. Напомним, что в общем случае адрес содержит один или несколько префиксов имя_системы!. Пример:
mail -F "guest sys6!guest"
Для отмены режима переадресации адресат должен быть пустым:
mail -F ""
Чтобы переадресация работала правильно, идентификатором группы, владеющей почтовым файлом, должен быть mail, а члены группы должны иметь право на чтение и запись.
ФАЙЛЫ
/etc/passwd Файл паролей используется для идентификации отправителей и адресатов. /usr/mail/пользователь Почтовый файл. $HOME/mbox Подразумеваемый файл для сохра нения писем. $MAIL Полное имя почтового файла. /tmp/ma* Временные файлы. /usr/mail/:saved/* Временные файлы. /usr/mail/*.lock Блокировочные файлы. dead.letter Прерванное письмо.
СМ. ТАКЖЕ
, , , .
ПРЕДОСТЕРЕЖЕНИЯ
В результате нескольких переадресаций может образоваться цикл. При попадании почты в цикл будет выдано сообщение
mail: Unbounded forwarding
Опцию -s следует использовать осторожно, так как без промежуточного перевода строки сообщение может быть проинтерпретировано как часть почтового штемпеля, что нарушит работу команды mail. Для совместимости с командой сделано так, что если первая строка сообщения - "Subject:...", то пустая строка не вставляется вне зависимости от использования опции -s.
СЮРПРИЗЫ
Иногда команда mail не может удалить блокировочный файл.
После возникновения прерывания следующее сообщение может не напечататься; команда p исправляет ситуацию.