В дальнейшем, чтобы отправить сообщение в производственный отдел просто введите команду:
mail proizv
Программа mail попросит вас ввести тему, а затем текст сообщения. Для окончания ввода нажмите Ctrl+D и mail отправит сообщения пользователям.
При создании псевдонимов убедитесь, что в вашей системе нет пользователей с таким именем.
Как видите, средствами одной программы mail вам удалось сделать немного. Если пользователей много, использовать механизм псевдонимов не очень удобно. Гораздо удобнее, чтобы программа mail брала список подписчиков из какого-нибудь файла. К сожалению, разработчики этой программы не предусмотрели такой возможности, однако с помощью небольшого сценария мы можем организовать эту возможность. Посмотрим, что из этого получится, если воспользоваться средствами интерпретатора команд bash.
Создайте сценарий smaller в своем домашнем каталоге (см. листинг 13.3).
#!/bin/bash
DT=`date`
echo $DT >> log
for user in `cat users`
do
echo "Sending message to $user"
mail $user –s Subscribe < msg 2>> log
done
Напомню, что сценарий — это обыкновенный текстовый файл с установленным атрибутом выполнения, содержащий команды интерпретатора. Более подробно сценарии рассматриваются в гл. 19, а сейчас попробую объяснить все на интуитивном уровне, чтобы вы поняли сам принцип работы вышеприведенного сценария.
В первой строке указывается, какой интерпретатор будет выполнять ваши команды — /bin/bash. Обратите внимание на одинарные кавычки, в которые заключена команда date. Это не обыкновенные кавычки, а те, которые расположены под знаком тильды «~». Во второй и третьей строках заносится дата в файл протокола log. Этот файл находится в домашнем каталоге.
Затем последовательно (в цикле for) читается список пользователей из файла users, который находится в домашнем каталоге, и передается имя пользователя программе mail. Программа mail поочередно отправит сообщение каждому пользователю из файла users. Тема сообщения устанавливается с помощью параметра –s, а само сообщение хранится в файле msg.
Весь поток ошибок перенаправляется в файл log. Вы можете переправить и все сообщения программы mail, удалив дескриптор 2 перед символами перенаправления ввода/вывода.
Теперь создайте файл users. Текст моего личного файла приведен в листинге 13.4.
den
u
synthetic
evg
Сообщения, которые вы хотите отправить, запишите в файл msg. Запустите сценарий командой:
./smaller
На экране вы должны увидеть следующую информацию:
Sending message to den
Sending message to u
Sending message to synthetic
Sending message to evg
Так как пользователя
Сбт Май 4 10:43:28 EEST 2002
evg… User unknown /root/dead.letter…
Saved message in /root/dead.letter
На экран не будет выведено сообщение об ошибке, потому что мы перенаправили стандартный поток ошибок в файл log. Как видите, все предельно просто.
Программу mail можно использовать и для чтения почты. Для этого просто введите команду:
mail
Если в вашем почтовом ящике нет сообщений, программа сообщит вам об этом:
No mail for user
где user — это ваше имя пользователя.
Если будут новые сообщения, программа выведет на экран нумерованный список, и вы сможете ввести номер сообщения, которое хотите прочитать. Для удаления сообщения используется команда d <номер> или d <диапазон>. Выйти из программы можно, введя команду q.
Использовать программу mail в качестве полноценной почтовой программы нельзя — она работает только с вашим локальным ящиком, поэтому если вам нужно будет получить сообщения откуда-то извне, скажем pop.mail.ru, вы не сможете сделать это. Я бы вам порекомендовал использовать программу kmail. которая входит в состав KDE. Данная программа поддерживает несколько учетных записей электронной почты, в том числе и локальный ящик, отправку сообщений с помощью SMTP и локального агента MTA (sendmail), а также сообщения в формате HTML, что является немаловажным, когда пользователи Outlook забывают включить текстовый формат для исходящих сообщений.
14
Бастионы
14.1. Применение IPChains
Для начала небольшое вступление. Читатель, скорее всего, знает, что весь трафик в сети состоит из пакетов. Каждый пакет состоит из двух частей: заголовка и тела. В заголовке пакета находится информация об источнике, адресате, типе пакета, а также прочая информация, которая характерна для пакетов определенных типов. В теле пакета передается та информация, которую мы хотим передать. Более подробно об этом было сказано в гл. 1 данной книги.
Вильям Л Саймон , Вильям Саймон , Наталья Владимировна Макеева , Нора Робертс , Юрий Викторович Щербатых
Зарубежная компьютерная, околокомпьютерная литература / ОС и Сети, интернет / Короткие любовные романы / Психология / Прочая справочная литература / Образование и наука / Книги по IT / Словари и Энциклопедии