feliz ano novo a todos, e vamos à caça das soluções... rsssssss...
seguinte,
criei um script para envio de mail e como tenho vários scripts a
executando, separei das demais e estou chamando através de ".
/caminho/mail.sh", o conteúdo é o seguinte:
----- inicio do script
email=eMail$$.sh
host=`hostname -s`
smtp=smtp.mail.com
data=`LC_ALL=C date "+%a, %d %b %Y %k:%M:%S %z"`
enviaMail() {
[ -z $remetente ] \
&& echo nao existe remetente \
&& exit 1
[ -z $destinatario ] \
&& echo nao existe destinatario \
&& exit 1
echo '#!/bin/bash' > $email
echo -n "(" >> $email
echo "echo HELO $host; sleep 1" >> $email
echo "echo MAIL FROM: $remetente; sleep 1" >> $email
echo "echo RCPT TO: $destinatario; sleep 1" >> $email
[ ! -z "$copia" ] && echo "echo RCPT CC: $copia; sleep 1" >> $email
echo "echo DATA; sleep 1" >> $email
echo "echo User-Agent: Shell Script via Telnet" >> $email
echo "echo From: $remetente" >> $email
if [ -z "$assunto" ]; then
echo "echo Subject: \"sem assunto\"" >> $email
else
echo "echo Subject: $assunto" >> $email
fi
echo "echo Date: $data" >> $email
echo "echo To: $destinatario" >> $email
[ ! -z "$copia" ] && echo "echo Cc: $copia" >> $email
echo "echo \"\"" >> $email
echo "echo \"$anexo\"" >> $email
echo "echo \".\"; sleep 1" >> $email
echo "echo \"\"" >> $email
echo "echo QUIT" >> $email
echo ") | telnet $smtp 25" >> $email
chmod +x $email
./$email >/dev/null 2>/dev/null
rm -f $email
}
-----
bom, como podem perceber, no início da função, verifico se existe
remetente e destinatário, caso o script não encontre essas variáveis,
ele aborta (exit 1) e dá uma mensagem de erro (nao existe remetente), o
meu problema é que tentei usar o break para não finalizar a execução dos
outros scripts no meio do processo, pois se eu utilizo o exit, o script
aborta por completo não finalizando o restante dos processos somente
porque não enviou o mail.
alguém já passou por algo parecido e teve que adotar alguma solução que
possa me dar uma luz ?
agradeço,
marcos braga
---------------------------------------------------------------------
Esta lista não admite a abordagem de outras liguagens de programação, como
perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio
aviso.
---------------------------------------------------------------------
Sair da lista: [EMAIL PROTECTED]
---------------------------------------------------------------------
Esta lista é moderada de acordo com o previsto em
http://www.listas-discussao.cjb.net
---------------------------------------------------------------------
Links do Yahoo! Grupos
<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/shell-script/
<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]
<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html