On Wed, Jul 14, 2004 at 10:43:26PM +0300, Vasil Kolev wrote:
> На ср, 2004-07-14 в 19:45, Emil Sakalijski записа:
> > Здравейте!
> > Извинявам се ако повдигам отново такъв въпрос, но ми се налага да
> > пращам много e-mail 
> > съобщения до около 60-70 клиента, но не трябва да се виждат останалите
> > реципиенти
> > Тоест, всяко съобщение да е само към един адрес. Как или с какво да го
> > направя?
> >  
> 
> Ами следното дали ти върши работа?
> #!/bin/sh
> 
> if [ -z "$3" ] ; then
>       echo Usage: $0 message list_of_addresses from_addr
>       exit 1
> fi
> 
> list="$2"
> msg="$1"
> from="$3"
> 
> for i in `cat $list`; do
>       cat $msg |sed "s/TOADDR/$i/g" | /usr/sbin/sendmail -f "$from" "$i"
> done

Това няма да се справя много добре със случая, когато адресите са в
малко "по-истински" формат, като Peter Pentchev <[EMAIL PROTECTED]>
например.  Този скрипт ще се опита да изпрати три различни съобщения до
'Peter', 'Pentchev' и '<[EMAIL PROTECTED]>', което вероятно не е желаният
резултат :)  Почти няма да спомена the useless uses of cat ;)

Цикълът може да бъде преписан така:

oldifs="$IFS"
IFS="\015"
while read i; do
        sed "s/TOADDR/$i/g" msg | /usr/sbin/sendmail -f "$from" "$i"
done < list
IFS="$oldifs"

...и в съобщението може да се махнат скобичките около TOADDR.

Иначе останалата част от скрипта става :)

Поздрави,
Петър

-- 
Peter Pentchev  [EMAIL PROTECTED]    [EMAIL PROTECTED]    [EMAIL PROTECTED]
PGP key:        http://people.FreeBSD.org/~roam/roam.key.asc
Key fingerprint FDBA FD79 C26F 3C51 C95E  DF9E ED18 B68D 1619 4553
This sentence every third, but it still comprehensible.

Attachment: pgpG1Szf7Y7mt.pgp
Description: PGP signature

          • ... Peter Georgiev
            • ... Борис Йорданов
              • ... Peter Pentchev
              • ... Борис Йорданов
              • ... Peter Georgiev
        • ... Hristo Chernev
          • ... Peter Pentchev
          • ... Todor RADIONOV
          • ... Vasil Kolev
  • ... Vasil Kolev
    • ... Peter Pentchev
      • ... Vasil Kolev
    • ... Georgi Chorbadzhiyski
  • ... Alexander P. Panov
    • ... Dimitar Katerinski

Reply via email to