Здравствуйе!
меня интересует вопрос!
я написал скриптик, который кидает на проверку письмо спамассассину, после чего пишет в лог, дату от кого и кому письмо и ставится флаг Spam Yes - если в заголовке письма обнаружено Spam=Yes.
Проблема в том, что outlook (Билгейтс ёмоё), если отправлять письмо нескольким пользователям пишет все имена ящиков не через запятую, а ставит перевод строки в заголовке. При проверке в лог так все и пишется с переводами строки. Как убрать перевод строки.
И еще мне хотелось бы убрать всякие кракозяблики
=?koi8-r?B?/MzY18nSwSDu1dLN1cjBzcXUz9fB?=
=?D56?/MzY18nSwSDu1dLN1cjBzcXUz9fB?=
и т.д.
Mon Apr 4 09:47:52 YEKST 2005 : Sender= <knigomir@mail.teles.ru> : Recipient= =?koi8-r?B?/MzY18nSwSDu1dLN1cjBzcXUz9fB?= <elvira_2000@pisem.net>
"Книгомир Оренбург" <knigomir@mail.teles.ru> : Spam=No
хотелось бы видеть строку в логе вот так
Mon Apr 4 09:47:52 YEKST 2005 : Sender= knigomir@mail.teles.ru : Recipient= elvira_2000@pisem.net : Spam=No
программа
#!/bin/sh
INSPECT_DIR=/var/spool/filter
SENDMAIL="/usr/sbin/sendmail -i"
SPAMASSASSIN=/usr/bin/spamassassin
TMP=/tmp/spamassassin
SPAMMAIL="spam@teles.ru"
LOG=/var/log/spamassassin
# Exit codes from <sysexits.h>
EX_TEMPFAIL=75
EX_UNAVAILABLE=69
cd $INSPECT_DIR || { echo $INSPECT_DIR does not exist; exit $EX_TEMPFAIL; }
# Clean up when done or when aborting.
trap "rm -f $TMP/out.$$" 0 1 2 3 15
cat | $SPAMASSASSIN -P > $TMP/out.$$ || { echo Message content rejected; exit $EX_UNAVAILABLE; }
FLAG=`sed -ne '/^X-Spam-Flag:/p' /tmp/spamassassin/out.$$ | awk 'BEGIN { FS=": " ; } { print $2 }'`
if [ "$FLAG" = "YES" ]
then
FROM=`sed -ne '/^Return-Path:/p' /tmp/spamassassin/out.$$ | awk -F: '{ print $2 }'`
заранее благодарен