Страница:
только в стартовых файлах /usr/lib/Mail.rc и
.mailrc.
- 21 -
help Выдает краткое описание команд mailx.
hold Сохраняет сообщения из полученного списка в сис-
темном почтовом ящике вместо того, чтобы помещать
их в файл mbox в Вашем регистрационном каталоге.
Если Вы установите логическую переменную hold, это
будет делаться по умолчанию.
if Команды из Вашего файла .mailrc могут выполняться
в зависимости от того, посылаете Вы или получаете
почту. Это делается по команде if. Например,
можно сказать:
if receive
команды...
endif
Также можно пользоваться частью else:
if send
команды...
else
команды...
endif
Обратите внимание, что возможны только два усло-
вия: receive и send.
ignore
Добавляет перечисленные поля заголовков сообщений
к списку игнорируемых полей. Поля из этого списка
не выводятся на терминал при печати сообщения. Это
позволяет опустить печать некоторых полей, генери-
руемых автоматически, например, Received, которые
обычно никого не интересуют. Команды Type и Print
позволяют просматривать сообщение целиком, включая
игнорируемые поля. Специальное имя поля -from
можно использовать если надо игнорировать служеб-
ную строку From ... в начале сообщения. Если
команда ignore вызывается без аргументов, она
выдает текущее множество игнорируемых полей. Аль-
тернативоне имя этой команды - discard.
list Выдает список действующих команд программы mailx.
local
задает список локальных имен Вашей машины. Эта
команда полезна если машина известна под несколь-
кими именами. Имена могут быть полными именами
машины или именами доменов. Первое имя в списке
должно быть официальным именем машины. Имена из
этого списка mailx использует для того, чтобы
определять являются ли имена локальными на этой
машине; например:
local viista.public.USSR frob.steel.USS
frobvax.cbs.USSR r.public.USSR
- 22 -
Из этого списка можно сделать вывод, что имена
vasya@viista.public
nina@frob.steel
и
bibi@r
относятся к пользователем на текущей машине.
Команда local обычно не используется пользовате-
лями непосредственно т.к. она описывает конфигура-
цию сети, ее обычно используют в файле
/usr/lib/Mail.rc.
lpr Команда lpr печатает список сообщений, используя
значение переменной LPR (если задано).
mail Посылает почту одному или нескольким пользовате-
лям. Если установлена переменная ask, mailx
выдает приглашение для ввода предметного заголовка
сообщения. После этого можно вводить текст сооб-
щения, пользуясь управляющими последовательнос-
тями, как описано в разделе 4, для редактирования,
печати или модификации сообщения. Когда сообщение
готово, для отправления его введите CTRL/D в
начале строки или (если установлена переменная
dot) точку на отдельной строке. Для отмены письма
введите два символа прерывания (по умолчанию
CTRL/C) подряд или воспользуйтесь управляющей пос-
ледовательностью ~q.
mbox Показывает список сообщений, которые будут запи-
саны в файл mbox в Вашем регистрационном каталоге
при выходе из программы mailx. Это делается авто-
матически, если у Вас не установлена переменная
hold.
next Команда next переходит к следующему сообщению и
печатает его. Если задан список сообщений, next
переходит к первому из них и печатает его. Так,
next root
переходит к следующему сообщению, полученному от
пользователя root и выводит его. Команду next для
краткости можно заменять символом новой строки, то
есть можно перейти к сообщению, задав его номер
или один из "магических" символов `^', `.' или
`$'. Так, команда
.
выдает текущее сообщение, а команда
4
печатает сообщение 4, как описано выше.
- 23 -
preserve
То же, что и hold. Помечает список сообщений для
сохранения в системном почтовом ящике при выходе
из mailx.
quit Завершает работу программы mailx и приводит в
соответствие файл, архивный файл или системный
почтовый ящик, который Вы читали. Сообщения,
которые Вы прочитали, помечаются как read, а сооб-
щения, существовавшие до начала сеанса, помечаются
как old. Если Вы редактировали Ваш системный поч-
товый ящик и у Вас установлена переменная hold,
все неудаленные, несохраненные и не записанные в
mbox сообщения возвращаются в Ваш системный почто-
вый ящик. Если Вы редактировали Ваш системный
почтовый ящик и переменная hold не установлена,
все сообщения, каторые не были удалены, сохранены
или возвращены в системный почтовый ящик, помеща-
ются в файл mbox в Вашем регистрационном каталоге.
Reply
Ответ посылается тому, кто послал Вам сообщение,
на которое Вы отвечаете, а также всем людям, полу-
чившим исходное сообщение, кроме Вас. Можно доба-
вить адресатов, пользуясь управляющими последова-
тельностями ~t и ~c. Предметный заголовок Вашего
ответа формируется из предметного заголовка исход-
ного письма путем постановки перед ним слова Re:,
если только его там уже не было. Если исходное
письмо содержит в заголовке поле Reply-to, ответ
будет отправлен только адресату, указанному в
Reply-to. При вводе письма действительны те же
соглашения, что и в команде mail.
save Часто бывает полезно сохранять в одном файле сооб-
щения на похожие темы. Эту возможность дает
команда save. Команде save передается несколько
номеров сообщений и имя файла, в котором их надо
сохранить. Сообщения дописываются к концу назван-
ного файла, что позволяет хранить несколько сооб-
щений в одном файле в том порядке, в каком их туда
поместили. Команда save сокращенно записывается
как s. В приведенном выше примере команду save
можно использовать так:
s 1 2 tuitionmail
Сохраненные сообщения не записываются автомати-
чески в файл mbox при выходе и не выбираются
командой next, если это особо не оговорено.
set Устанавливает переменную или значение переменной.
Используется для облегчения работы с mailx. В
разделе 5.3 содержится список переменных. Перемен-
ные бывают логические (в этом случае они или уста-
новлены, или не установлены) и значащие. Чтобы
логическая переменная option была установлена,
надо выполнить команду:
- 24 -
set переменная
Присвоить значащей переменной option значение
value можно так:
set переменная=значение
Несколько переменных можно определить одной коман-
дой set.
shell
Команда shell вызывает интерпретатор командного
языка. При выходе из интерпретатора командного
языка Вы вернетесь в mailx. Интерпретатор команд-
ного языка, вызываемый по умолчанию, определяется
программой mailx; его можно изменить, установив
значащую переменную SHELL:
set SHELL=/bin/csh
source
Команда source читает команды mailx из файла. Это
полезно, если Вы изменили файл .mailrc и хотите
его перезапустить.
top Команда top получает список сообщений и печатает
первые пять строк каждого из этих сообщений. Сок-
ращенная форма - to. Если хотите, можете изменить
число выводимых top строк, задав его переменной
toplines. Для дисплея лучше задавать
set toplines=10
type,print
Команда type (или print) печатает список сообщений
на экране терминала. Если переменная crt имеет
некоторое значение и число строк в просматриваемом
сообщении достигает числа, определенного crt,
сообщение будет выдаваться по crt-1 строк, после
чего mailx будет ожидать ввода символа новой
строки. Вместо встроенной подпрограммы постранич-
ной выдачи можно использовать любую внешнюю прог-
рамму, если установить переменную PAGER; например,
если была выполнена команда
set PAGER=/usr/bin/more
то все длинные сообщения будут пропускаться через
программу постраничной выдачи more.
undelete
Команда undelete восстанавливает исходный статус
сообщения, которое было удалено. Восстанавливать
можно только удаленные сообщения. Сокращенная
форма команды - u.
- 25 -
unset
Действие, обратное установке логической или знача-
щей переменной.
uudecode
Команда применяет алгоритм uudecode к указанному
списку сообщений, раскодируя файлы из текстового
представления обратно в бинарное (см. кодирующую
управляющую последовательность ~u). Таким образом,
с помощью mailx можно передавать и принимать
бинарные (нетекстовые) файлы.
visual
Иногда необходимо вызвать один из двух возможных
редакторов, в зависимости от типа используемого
терминала. Для вызова экранного редактора исполь-
зуется команда visual. В остальном команда visual
не отличается от команды edit. Обе команды edit и
visual по умолчанию вызывают определенные редак-
торы. Чтобы вызывать другие редакторы, нужно
присвоить переменным EDITOR и VISUAL имена стан-
дартного и экранного редакторов соответственно.
Можно, например, сделать так:
set EDITOR=/bin/ed VISUAL=/bin/eda
write
Команда save записывает сообщение в файл все цели-
ком, включая заголовок. Если Вам нужно записать
только сам текст сообщения, воспользуйтесь коман-
дой write. У команды write такой же синтаксис,
как и у save. Сокращенная форма команды - w.
Так, записать текст второго сообщения можно так:
w 2 file.c
Как видно из примера, команда write может приме-
няться для пересылки текстов программ по почте.
z Программа mailx показывает заголовки сообщений
окнами, как было сказано в описании команды
headers. Чтобы заставить mailx переключиться на
следующее окно, надо выполнить команду
z+
Аналогично, переход к предыдущему окну делается
так:
z-
Переход к первому и последнему окнам сообщений
производится командами
z1 и z$
соответственно.
- 26 -
@headers, @reply, @Reply, @from
Эти команды аналогичны соотвествующим командам без
@, но используют в качестве адреса автора сообще-
ния не абсолютный адрес из поля From: заголовка
сообщения, а автоматически собранный обратный путь
из служебной строки начала сообщения. Эти команды
можно использовать если система доставки почты
оказывается не в состоянии найти маршрут для отп-
равки сообщения по абсолютному адресу. (Доставка
сообщения по абсолютному адресу обычно быстрее, а
использование относительного обратного пути позво-
ляет разрешить проблемы при доставке ответа в
сложных сетях).
5.3. Переменные
В этом документе уже приводились примеры логических
и значащих переменных. В этом разделе описаны все пере-
менные в алфавитном порядке. Внимание: не забывайте,
что имя переменной может состоять либо только из боль-
ших, либо только из маленьких букв.
EDITOR
Значащая переменная EDITOR определяет полное имя
текстового редактора, который вызывается командой
edit и управляющей последовательностью `~e'. Если
переменная не определена, вызывается стандартный
редактор.
LPR Значащая переменная, содержащая имя и ключи прог-
раммы, вызывающейся для печати сообщений командой
lpr. По умолчанию имеет значение lpr.
PAGER
Значащая переменная PAGER содержит полное имя
программы постраничной выдачи, которая будет
использоваться вместо встроенной подпрограммы
постраничной выдачи.
SHELL
Значащая переменная SHELL задает имя Вашего
интерпретатора командного языка, который использу-
ется командой `!' и управляющей последователь-
ностью `~!'. Кроме того, интерпретатор командного
языка нужен для расширения имен файлов, содержащих
такие метасимволы, как `*' или `?'.
VISUAL
Значащая переменная VISUAL определяет имя экран-
ного редактора для команды visual и управляющей
последовательности ~v. Если переменная не опреде-
лена, используется стандартный экранный редактор.
append
Логическая переменная append означает, что сообще-
ния, записанные в mbox, должны дописываться к
концу, а не к началу файла. Обычно mailx помещает
сообщения в mbox в том же порядке, в каком система
- 27 -
помещает их в Ваш системный почтовый ящик. Если
установить переменную append, сообщения всегда
будут дописываться в конец файла mbox. В любом
случае дописывание будет выполняться быстрее.
ask Логическая переменная ask заставляет mailx выда-
вать приглашение для ввода предметного заголовка
при составлении любого письма. Если Вы в ответ на
это приглашение просто нажимаете клавишу Return,
предметного поля в заголовке письма не будет.
askcc
Логическая переменная askcc устанавливается, если
Вы хотите получать приглашение для ввода дополни-
тельных адресатов вторых экземпляров по окончании
ввода каждого сообщения. Нажатие клавиши ВК озна-
чает, что Вы согласны с текущим списком.
autoprint
Логическая переменная autoprint заставляет команду
delete работать как dp (после удаления письма сле-
дующее будет печататься автоматически). Это
полезно для быстрого просмотра и уничтожения сооб-
щений из почтового ящика.
autosign
Логическая переменная autosign задает режим, при
котором в конец каждого посланного сообщения
добавляется файл $HOME/.signature, в котором
обычно находится адрес и телефон отправителя.
debug
Логическая переменная debug предназначена для
печати отладочной информации. Установка этой
переменной равносильна использованию ключа -d в
командной строке.
dot Логическая переменная dot, если она установлена,
заставляет mailx воспринимать точку, стоящую в
отдельной строке, как знак окончания письма, кото-
рое Вы составляете.
escape
Если Вы хотите переназначить управляющий символ,
используемый при составлении сообщений, можете
установить значащую переменную escape. Во внима-
ние принимается только первый символ переменной
escape, а если этот символ надо поставить первым в
строке Вашего сообщения, он удваивается. Если Вы
поменяли управляющий символ, тильда `~' теряет
свое специальное значение, и его больше не надо
удваивать, ставя в начале строки.
folder
Имя каталога для записи архивных файлов. Если имя
начинается со знака `/', программа mailx считает,
что это полное имя каталога, начиная от корня,
иначе архивный каталог ищется относительно Вашего
- 28 -
регистрационного каталога.
headerfield
Имя поля (без :), которое выдается по команде
headers. Если переменная не задана, поле констру-
ируется стандартным образом из From: (если есть,
иначе из From ). Для удобного просмотра заголов-
ков своих отправленых писем нужно задать:
set headerfield=to
headername
Если установлена эта логическая переменная, по
команде headers выдается не адрес пользователя, а
его имя (если есть). Рекомендуется установить эту
переменную. По умолчанию выдается адрес (для сов-
местимости).
hold Логическая переменная hold указывает, что сообще-
ния, которые Вы прочитали, но над которыми не про-
изводили никаких действий, следует сохранять в
системном почтовом ящике, а не записывать автома-
тически в Ваш файл mbox.
ignore
Логическая переменная ignore указывает, что при
составлении сообщений следует игнорировать символы
CTRL/C, приходящие с Вашего терминала. Символы
CTRL/C сохраняют свое исходное значение в команд-
ном режиме программы mailx. Установка переменной
ignore равносильна указанию ключа -i в командной
строке, как описано в разделе 6.
ignoreeof
Родственная переменной dot переменная ignoreeof
заставляет mailx не воспринимать CTRL/D как приз-
нак конца сообщения. Переменная ignoreeof рабо-
тает и в командном режиме mailx.
keep Переменная keep указывает mailx, что если Ваш сис-
темный почтовый ящик пуст, его не следует удалять,
а надо сохранить файлом нулевой длины. Это
полезно в том случае, если Вы решили защитить свой
почтовый ящик, что можно сделать командой
chmod 600 /usr/spool/mail/yourname
где yourname - Ваше регистрационное имя. Если Вы
этого не сделали, кто-нибудь может случайно про-
честь Вашу почту, хотя приличные люди чужую почту
не читают (даже случайно!).
keepsave
Если Вы сохраняете сообщение командой save, прог-
рамма mailx обычно не учитывает его при выходе.
Чтобы помнить все сохраненные сообщения, надо
установить переменную keepsave.
- 29 -
metoo
Если Вы отправляете почту по псевдониму, mailx не
посылает сообщение Вам, даже если этот псевдоним
Вас включает. Это удобно тогда, когда одним псев-
донимом пользуются все члены группы. Если же Вы
хотите получать копии сообщений, которые Вы посы-
лаете по псевдониму, можете установить логическую
переменую metoo.
noheader
Логическая переменная noheader отменяет печать
номера версии и заголовков при вызове mailx.
Установка этой переменной эквивалентна указанию
ключа -N в командной строке.
nopipe
По умолчанию, при вызове внешней программы прос-
мотра сообщений, сообщение подается на стандартный
ввод. Если установлена переменная nopipe, формиру-
ется временный файл и передается программе прос-
мотра в качестве аргумента. Этот режим бывает
полезен при перемещениях по сообщению.
nosave
Обычно при отмене письма по двухкратному нажатию
CTRL/C mailx копирует незаконченное письмо в файл
dead.letter в Вашем регистрационном каталоге.
Установив переменную nosave, Вы это предотвратите.
quiet
Логическая переменная quiet отменяет печать номера
версии при вызове mailx, печать таких диагностик,
как Сообщение 4: командой type. и печать дополни-
тельной информации для начинающего пользователя.
record
Если Вы любите хранить копии своих писем, прис-
войте переменной record имя файла, в который будет
записываться исходящая почта. Каждое новое отп-
равленное Вами сообщение будет дописано к концу
этого файла.
screen
Когда программа mailx при запуске печатает заго-
ловки сообщений, число выдаваемых заголовков зави-
сит от скорости Вашего терминала. Чем быстрее
терминал, тем больше заголовков печатается. Знача-
щая переменная screen изменяет это число. Ее зна-
чение определяет, сколько заголовков сообщений
должно выдаваться. Это же число используется для
сдвигов при помощи команды z.
sendmail
Чтобы заменить систему доставки почты, надо прис-
воить переменной sendmail полное имя той прог-
раммы, которую Вы хотите использовать. Заметьте:
это надо не всем! Большинство людей могут пользо-
ваться той системой доставки почты, которая
- 30 -
вызывается по умолчанию.
sort Значащая переменная, задающая порядок сортировки
сообщений. Распознаются следующие значения:
author
- сортировка по имени автора;
date - сортировка по дате и времени;
subject
- сортировка по темам.
Сортировка происходит при чтении почтового ящика.
Например, чтобы отсортировать текущий файл, нужно после
установки переменной sort перечитать его командой file.
toplines
Значащая переменная toplines определяет число
строк, которые печатает команда top вместо обычных
пяти строк.
verbose
Логическая переменная verbose заставляет программу
mailx вызывать sendmail с ключом -v, в котором он
работает в режиме расширенных диагностик, объяв-
ляет расширения псевдонимов и т.д. Установка пере-
менной verbose эквивалентна вызову mailx с ключом
-v, как описано в разделе 6.
6. Ключи командной строки
В этом разделе описаны ключи, используемые в команд-
ной строке при вызове программы mailx.
-N Подавляет начальную печать заголовков.
-d Включает отладочную информацию. Не для общего
пользования.
-f файл
Показывает сообщения из файла файл, а не из Вашего
системного почтового ящика. Если имя файл опу-
щено, программа mailx читает файл mbox в Вашем
регистрационном каталоге.
-i Игнорирует сигналы прерывания CTRL/C, приходящие с
терминала.
-n Запрещает чтение файла /usr/lib/Mail.rc. Исполь-
зуется редко, так как /usr/lib/Mail.rc обычно
пуст.
-s строка
Используется при посылке почты. Строка использу-
ется в качестве заголовка составляемого сообщения.
Если строка содержит пробелы, ее следует заключить
в кавычки.
- 31 -
-u имя
Читает почту пользователя имя вместо Вашей собст-
венной. Некоторые пренебрегают защитой своих поч-
товых ящиков, но лучше быть осторожным. По
существу, -u имя - это более простой способ сде-
лать то же, что и -f /usr/spool/mail/имя.
-v Ключ -v передается sendmail. То же самое можно
сделать, установив переменную verbose.
Следующие ключи также могут быть использованы в
командной строке, но предполагается, что ими будут
пользоваться не люди, а программы, вызывающие mailx.
-T файл
Организует запись в файл содержимого полей
Article-Id всех сообщений, которые были прочитаны
или удалены. Ключ -T сделан для программы read-
news и не может использоваться для чтения Вашей
почты.
-h число
Передает счетчик промежуточных пересылок. Прог-
.mailrc.
- 21 -
help Выдает краткое описание команд mailx.
hold Сохраняет сообщения из полученного списка в сис-
темном почтовом ящике вместо того, чтобы помещать
их в файл mbox в Вашем регистрационном каталоге.
Если Вы установите логическую переменную hold, это
будет делаться по умолчанию.
if Команды из Вашего файла .mailrc могут выполняться
в зависимости от того, посылаете Вы или получаете
почту. Это делается по команде if. Например,
можно сказать:
if receive
команды...
endif
Также можно пользоваться частью else:
if send
команды...
else
команды...
endif
Обратите внимание, что возможны только два усло-
вия: receive и send.
ignore
Добавляет перечисленные поля заголовков сообщений
к списку игнорируемых полей. Поля из этого списка
не выводятся на терминал при печати сообщения. Это
позволяет опустить печать некоторых полей, генери-
руемых автоматически, например, Received, которые
обычно никого не интересуют. Команды Type и Print
позволяют просматривать сообщение целиком, включая
игнорируемые поля. Специальное имя поля -from
можно использовать если надо игнорировать служеб-
ную строку From ... в начале сообщения. Если
команда ignore вызывается без аргументов, она
выдает текущее множество игнорируемых полей. Аль-
тернативоне имя этой команды - discard.
list Выдает список действующих команд программы mailx.
local
задает список локальных имен Вашей машины. Эта
команда полезна если машина известна под несколь-
кими именами. Имена могут быть полными именами
машины или именами доменов. Первое имя в списке
должно быть официальным именем машины. Имена из
этого списка mailx использует для того, чтобы
определять являются ли имена локальными на этой
машине; например:
local viista.public.USSR frob.steel.USS
frobvax.cbs.USSR r.public.USSR
- 22 -
Из этого списка можно сделать вывод, что имена
vasya@viista.public
nina@frob.steel
и
bibi@r
относятся к пользователем на текущей машине.
Команда local обычно не используется пользовате-
лями непосредственно т.к. она описывает конфигура-
цию сети, ее обычно используют в файле
/usr/lib/Mail.rc.
lpr Команда lpr печатает список сообщений, используя
значение переменной LPR (если задано).
mail Посылает почту одному или нескольким пользовате-
лям. Если установлена переменная ask, mailx
выдает приглашение для ввода предметного заголовка
сообщения. После этого можно вводить текст сооб-
щения, пользуясь управляющими последовательнос-
тями, как описано в разделе 4, для редактирования,
печати или модификации сообщения. Когда сообщение
готово, для отправления его введите CTRL/D в
начале строки или (если установлена переменная
dot) точку на отдельной строке. Для отмены письма
введите два символа прерывания (по умолчанию
CTRL/C) подряд или воспользуйтесь управляющей пос-
ледовательностью ~q.
mbox Показывает список сообщений, которые будут запи-
саны в файл mbox в Вашем регистрационном каталоге
при выходе из программы mailx. Это делается авто-
матически, если у Вас не установлена переменная
hold.
next Команда next переходит к следующему сообщению и
печатает его. Если задан список сообщений, next
переходит к первому из них и печатает его. Так,
next root
переходит к следующему сообщению, полученному от
пользователя root и выводит его. Команду next для
краткости можно заменять символом новой строки, то
есть можно перейти к сообщению, задав его номер
или один из "магических" символов `^', `.' или
`$'. Так, команда
.
выдает текущее сообщение, а команда
4
печатает сообщение 4, как описано выше.
- 23 -
preserve
То же, что и hold. Помечает список сообщений для
сохранения в системном почтовом ящике при выходе
из mailx.
quit Завершает работу программы mailx и приводит в
соответствие файл, архивный файл или системный
почтовый ящик, который Вы читали. Сообщения,
которые Вы прочитали, помечаются как read, а сооб-
щения, существовавшие до начала сеанса, помечаются
как old. Если Вы редактировали Ваш системный поч-
товый ящик и у Вас установлена переменная hold,
все неудаленные, несохраненные и не записанные в
mbox сообщения возвращаются в Ваш системный почто-
вый ящик. Если Вы редактировали Ваш системный
почтовый ящик и переменная hold не установлена,
все сообщения, каторые не были удалены, сохранены
или возвращены в системный почтовый ящик, помеща-
ются в файл mbox в Вашем регистрационном каталоге.
Reply
Ответ посылается тому, кто послал Вам сообщение,
на которое Вы отвечаете, а также всем людям, полу-
чившим исходное сообщение, кроме Вас. Можно доба-
вить адресатов, пользуясь управляющими последова-
тельностями ~t и ~c. Предметный заголовок Вашего
ответа формируется из предметного заголовка исход-
ного письма путем постановки перед ним слова Re:,
если только его там уже не было. Если исходное
письмо содержит в заголовке поле Reply-to, ответ
будет отправлен только адресату, указанному в
Reply-to. При вводе письма действительны те же
соглашения, что и в команде mail.
save Часто бывает полезно сохранять в одном файле сооб-
щения на похожие темы. Эту возможность дает
команда save. Команде save передается несколько
номеров сообщений и имя файла, в котором их надо
сохранить. Сообщения дописываются к концу назван-
ного файла, что позволяет хранить несколько сооб-
щений в одном файле в том порядке, в каком их туда
поместили. Команда save сокращенно записывается
как s. В приведенном выше примере команду save
можно использовать так:
s 1 2 tuitionmail
Сохраненные сообщения не записываются автомати-
чески в файл mbox при выходе и не выбираются
командой next, если это особо не оговорено.
set Устанавливает переменную или значение переменной.
Используется для облегчения работы с mailx. В
разделе 5.3 содержится список переменных. Перемен-
ные бывают логические (в этом случае они или уста-
новлены, или не установлены) и значащие. Чтобы
логическая переменная option была установлена,
надо выполнить команду:
- 24 -
set переменная
Присвоить значащей переменной option значение
value можно так:
set переменная=значение
Несколько переменных можно определить одной коман-
дой set.
shell
Команда shell вызывает интерпретатор командного
языка. При выходе из интерпретатора командного
языка Вы вернетесь в mailx. Интерпретатор команд-
ного языка, вызываемый по умолчанию, определяется
программой mailx; его можно изменить, установив
значащую переменную SHELL:
set SHELL=/bin/csh
source
Команда source читает команды mailx из файла. Это
полезно, если Вы изменили файл .mailrc и хотите
его перезапустить.
top Команда top получает список сообщений и печатает
первые пять строк каждого из этих сообщений. Сок-
ращенная форма - to. Если хотите, можете изменить
число выводимых top строк, задав его переменной
toplines. Для дисплея лучше задавать
set toplines=10
type,print
Команда type (или print) печатает список сообщений
на экране терминала. Если переменная crt имеет
некоторое значение и число строк в просматриваемом
сообщении достигает числа, определенного crt,
сообщение будет выдаваться по crt-1 строк, после
чего mailx будет ожидать ввода символа новой
строки. Вместо встроенной подпрограммы постранич-
ной выдачи можно использовать любую внешнюю прог-
рамму, если установить переменную PAGER; например,
если была выполнена команда
set PAGER=/usr/bin/more
то все длинные сообщения будут пропускаться через
программу постраничной выдачи more.
undelete
Команда undelete восстанавливает исходный статус
сообщения, которое было удалено. Восстанавливать
можно только удаленные сообщения. Сокращенная
форма команды - u.
- 25 -
unset
Действие, обратное установке логической или знача-
щей переменной.
uudecode
Команда применяет алгоритм uudecode к указанному
списку сообщений, раскодируя файлы из текстового
представления обратно в бинарное (см. кодирующую
управляющую последовательность ~u). Таким образом,
с помощью mailx можно передавать и принимать
бинарные (нетекстовые) файлы.
visual
Иногда необходимо вызвать один из двух возможных
редакторов, в зависимости от типа используемого
терминала. Для вызова экранного редактора исполь-
зуется команда visual. В остальном команда visual
не отличается от команды edit. Обе команды edit и
visual по умолчанию вызывают определенные редак-
торы. Чтобы вызывать другие редакторы, нужно
присвоить переменным EDITOR и VISUAL имена стан-
дартного и экранного редакторов соответственно.
Можно, например, сделать так:
set EDITOR=/bin/ed VISUAL=/bin/eda
write
Команда save записывает сообщение в файл все цели-
ком, включая заголовок. Если Вам нужно записать
только сам текст сообщения, воспользуйтесь коман-
дой write. У команды write такой же синтаксис,
как и у save. Сокращенная форма команды - w.
Так, записать текст второго сообщения можно так:
w 2 file.c
Как видно из примера, команда write может приме-
няться для пересылки текстов программ по почте.
z Программа mailx показывает заголовки сообщений
окнами, как было сказано в описании команды
headers. Чтобы заставить mailx переключиться на
следующее окно, надо выполнить команду
z+
Аналогично, переход к предыдущему окну делается
так:
z-
Переход к первому и последнему окнам сообщений
производится командами
z1 и z$
соответственно.
- 26 -
@headers, @reply, @Reply, @from
Эти команды аналогичны соотвествующим командам без
@, но используют в качестве адреса автора сообще-
ния не абсолютный адрес из поля From: заголовка
сообщения, а автоматически собранный обратный путь
из служебной строки начала сообщения. Эти команды
можно использовать если система доставки почты
оказывается не в состоянии найти маршрут для отп-
равки сообщения по абсолютному адресу. (Доставка
сообщения по абсолютному адресу обычно быстрее, а
использование относительного обратного пути позво-
ляет разрешить проблемы при доставке ответа в
сложных сетях).
5.3. Переменные
В этом документе уже приводились примеры логических
и значащих переменных. В этом разделе описаны все пере-
менные в алфавитном порядке. Внимание: не забывайте,
что имя переменной может состоять либо только из боль-
ших, либо только из маленьких букв.
EDITOR
Значащая переменная EDITOR определяет полное имя
текстового редактора, который вызывается командой
edit и управляющей последовательностью `~e'. Если
переменная не определена, вызывается стандартный
редактор.
LPR Значащая переменная, содержащая имя и ключи прог-
раммы, вызывающейся для печати сообщений командой
lpr. По умолчанию имеет значение lpr.
PAGER
Значащая переменная PAGER содержит полное имя
программы постраничной выдачи, которая будет
использоваться вместо встроенной подпрограммы
постраничной выдачи.
SHELL
Значащая переменная SHELL задает имя Вашего
интерпретатора командного языка, который использу-
ется командой `!' и управляющей последователь-
ностью `~!'. Кроме того, интерпретатор командного
языка нужен для расширения имен файлов, содержащих
такие метасимволы, как `*' или `?'.
VISUAL
Значащая переменная VISUAL определяет имя экран-
ного редактора для команды visual и управляющей
последовательности ~v. Если переменная не опреде-
лена, используется стандартный экранный редактор.
append
Логическая переменная append означает, что сообще-
ния, записанные в mbox, должны дописываться к
концу, а не к началу файла. Обычно mailx помещает
сообщения в mbox в том же порядке, в каком система
- 27 -
помещает их в Ваш системный почтовый ящик. Если
установить переменную append, сообщения всегда
будут дописываться в конец файла mbox. В любом
случае дописывание будет выполняться быстрее.
ask Логическая переменная ask заставляет mailx выда-
вать приглашение для ввода предметного заголовка
при составлении любого письма. Если Вы в ответ на
это приглашение просто нажимаете клавишу Return,
предметного поля в заголовке письма не будет.
askcc
Логическая переменная askcc устанавливается, если
Вы хотите получать приглашение для ввода дополни-
тельных адресатов вторых экземпляров по окончании
ввода каждого сообщения. Нажатие клавиши ВК озна-
чает, что Вы согласны с текущим списком.
autoprint
Логическая переменная autoprint заставляет команду
delete работать как dp (после удаления письма сле-
дующее будет печататься автоматически). Это
полезно для быстрого просмотра и уничтожения сооб-
щений из почтового ящика.
autosign
Логическая переменная autosign задает режим, при
котором в конец каждого посланного сообщения
добавляется файл $HOME/.signature, в котором
обычно находится адрес и телефон отправителя.
debug
Логическая переменная debug предназначена для
печати отладочной информации. Установка этой
переменной равносильна использованию ключа -d в
командной строке.
dot Логическая переменная dot, если она установлена,
заставляет mailx воспринимать точку, стоящую в
отдельной строке, как знак окончания письма, кото-
рое Вы составляете.
escape
Если Вы хотите переназначить управляющий символ,
используемый при составлении сообщений, можете
установить значащую переменную escape. Во внима-
ние принимается только первый символ переменной
escape, а если этот символ надо поставить первым в
строке Вашего сообщения, он удваивается. Если Вы
поменяли управляющий символ, тильда `~' теряет
свое специальное значение, и его больше не надо
удваивать, ставя в начале строки.
folder
Имя каталога для записи архивных файлов. Если имя
начинается со знака `/', программа mailx считает,
что это полное имя каталога, начиная от корня,
иначе архивный каталог ищется относительно Вашего
- 28 -
регистрационного каталога.
headerfield
Имя поля (без :), которое выдается по команде
headers. Если переменная не задана, поле констру-
ируется стандартным образом из From: (если есть,
иначе из From ). Для удобного просмотра заголов-
ков своих отправленых писем нужно задать:
set headerfield=to
headername
Если установлена эта логическая переменная, по
команде headers выдается не адрес пользователя, а
его имя (если есть). Рекомендуется установить эту
переменную. По умолчанию выдается адрес (для сов-
местимости).
hold Логическая переменная hold указывает, что сообще-
ния, которые Вы прочитали, но над которыми не про-
изводили никаких действий, следует сохранять в
системном почтовом ящике, а не записывать автома-
тически в Ваш файл mbox.
ignore
Логическая переменная ignore указывает, что при
составлении сообщений следует игнорировать символы
CTRL/C, приходящие с Вашего терминала. Символы
CTRL/C сохраняют свое исходное значение в команд-
ном режиме программы mailx. Установка переменной
ignore равносильна указанию ключа -i в командной
строке, как описано в разделе 6.
ignoreeof
Родственная переменной dot переменная ignoreeof
заставляет mailx не воспринимать CTRL/D как приз-
нак конца сообщения. Переменная ignoreeof рабо-
тает и в командном режиме mailx.
keep Переменная keep указывает mailx, что если Ваш сис-
темный почтовый ящик пуст, его не следует удалять,
а надо сохранить файлом нулевой длины. Это
полезно в том случае, если Вы решили защитить свой
почтовый ящик, что можно сделать командой
chmod 600 /usr/spool/mail/yourname
где yourname - Ваше регистрационное имя. Если Вы
этого не сделали, кто-нибудь может случайно про-
честь Вашу почту, хотя приличные люди чужую почту
не читают (даже случайно!).
keepsave
Если Вы сохраняете сообщение командой save, прог-
рамма mailx обычно не учитывает его при выходе.
Чтобы помнить все сохраненные сообщения, надо
установить переменную keepsave.
- 29 -
metoo
Если Вы отправляете почту по псевдониму, mailx не
посылает сообщение Вам, даже если этот псевдоним
Вас включает. Это удобно тогда, когда одним псев-
донимом пользуются все члены группы. Если же Вы
хотите получать копии сообщений, которые Вы посы-
лаете по псевдониму, можете установить логическую
переменую metoo.
noheader
Логическая переменная noheader отменяет печать
номера версии и заголовков при вызове mailx.
Установка этой переменной эквивалентна указанию
ключа -N в командной строке.
nopipe
По умолчанию, при вызове внешней программы прос-
мотра сообщений, сообщение подается на стандартный
ввод. Если установлена переменная nopipe, формиру-
ется временный файл и передается программе прос-
мотра в качестве аргумента. Этот режим бывает
полезен при перемещениях по сообщению.
nosave
Обычно при отмене письма по двухкратному нажатию
CTRL/C mailx копирует незаконченное письмо в файл
dead.letter в Вашем регистрационном каталоге.
Установив переменную nosave, Вы это предотвратите.
quiet
Логическая переменная quiet отменяет печать номера
версии при вызове mailx, печать таких диагностик,
как Сообщение 4: командой type. и печать дополни-
тельной информации для начинающего пользователя.
record
Если Вы любите хранить копии своих писем, прис-
войте переменной record имя файла, в который будет
записываться исходящая почта. Каждое новое отп-
равленное Вами сообщение будет дописано к концу
этого файла.
screen
Когда программа mailx при запуске печатает заго-
ловки сообщений, число выдаваемых заголовков зави-
сит от скорости Вашего терминала. Чем быстрее
терминал, тем больше заголовков печатается. Знача-
щая переменная screen изменяет это число. Ее зна-
чение определяет, сколько заголовков сообщений
должно выдаваться. Это же число используется для
сдвигов при помощи команды z.
sendmail
Чтобы заменить систему доставки почты, надо прис-
воить переменной sendmail полное имя той прог-
раммы, которую Вы хотите использовать. Заметьте:
это надо не всем! Большинство людей могут пользо-
ваться той системой доставки почты, которая
- 30 -
вызывается по умолчанию.
sort Значащая переменная, задающая порядок сортировки
сообщений. Распознаются следующие значения:
author
- сортировка по имени автора;
date - сортировка по дате и времени;
subject
- сортировка по темам.
Сортировка происходит при чтении почтового ящика.
Например, чтобы отсортировать текущий файл, нужно после
установки переменной sort перечитать его командой file.
toplines
Значащая переменная toplines определяет число
строк, которые печатает команда top вместо обычных
пяти строк.
verbose
Логическая переменная verbose заставляет программу
mailx вызывать sendmail с ключом -v, в котором он
работает в режиме расширенных диагностик, объяв-
ляет расширения псевдонимов и т.д. Установка пере-
менной verbose эквивалентна вызову mailx с ключом
-v, как описано в разделе 6.
6. Ключи командной строки
В этом разделе описаны ключи, используемые в команд-
ной строке при вызове программы mailx.
-N Подавляет начальную печать заголовков.
-d Включает отладочную информацию. Не для общего
пользования.
-f файл
Показывает сообщения из файла файл, а не из Вашего
системного почтового ящика. Если имя файл опу-
щено, программа mailx читает файл mbox в Вашем
регистрационном каталоге.
-i Игнорирует сигналы прерывания CTRL/C, приходящие с
терминала.
-n Запрещает чтение файла /usr/lib/Mail.rc. Исполь-
зуется редко, так как /usr/lib/Mail.rc обычно
пуст.
-s строка
Используется при посылке почты. Строка использу-
ется в качестве заголовка составляемого сообщения.
Если строка содержит пробелы, ее следует заключить
в кавычки.
- 31 -
-u имя
Читает почту пользователя имя вместо Вашей собст-
венной. Некоторые пренебрегают защитой своих поч-
товых ящиков, но лучше быть осторожным. По
существу, -u имя - это более простой способ сде-
лать то же, что и -f /usr/spool/mail/имя.
-v Ключ -v передается sendmail. То же самое можно
сделать, установив переменную verbose.
Следующие ключи также могут быть использованы в
командной строке, но предполагается, что ими будут
пользоваться не люди, а программы, вызывающие mailx.
-T файл
Организует запись в файл содержимого полей
Article-Id всех сообщений, которые были прочитаны
или удалены. Ключ -T сделан для программы read-
news и не может использоваться для чтения Вашей
почты.
-h число
Передает счетчик промежуточных пересылок. Прог-