URGENTE!!! (EMAILS)

1. URGENTE!!! (EMAILS)

Alex Fernando
showd07

(usa Debian)

Enviado em 10/11/2011 - 09:56h

Olá, bom dia a todos. Preciso de um script que monte uma unidade, pegue dois arquivos, lista.txt e imagem.jpg. Esse script vai mandar a imagem para todos os emails contidos no lista.txt. Montar a unidade tudo bem, os problemas são: qual comando usar para mandar emails para os destinatários no lista.txt e mandar a imagem no corpo do email e não como axexo. GRATO!!


  


2. Re: URGENTE!!! (EMAILS)

Adriano Moreira da Silva
adri3d

(usa Arch Linux)

Enviado em 12/11/2011 - 00:57h

a essa hora já não é mais urgente


#!/bin/bash
# gerador tabajara de spam
# http://www.vivaolinux.com.br/artigo/Enviando-emails-pelo-terminal/
# http://www.vivaolinux.com.br/artigo/Enviando-email-pelo-shell-com-smtp-remoto

email_de="tiburcio@$HOSTNAME"
lista_emails=/media/hdmontado/lista.txt #um email por linha
assunto="image..."
mensage="sege anexo"
anexo=/media/hdmontado/image.jpg
servidor_smtp="$HOSTNAME"
senha="123456"

while read email_para
do
echo "mandando spam para: $email_para"
sendEmail -f $email_de -t $email_para -u "$assunto" -m "$mensage" -a $anexo -s $servidor_smtp -xu $email_de -xp $senha
done < $lista_emails




3. Ainda sem solução

Alex Fernando
showd07

(usa Debian)

Enviado em 12/11/2011 - 01:57h

Sim. Esse script me ajudaria se a imagem fosse em anexo. Mas a imagem tem que ser no corpo do email como se fosse outlook express. grato


4. Re: URGENTE!!! (EMAILS)

Perfil removido
removido

(usa Nenhuma)

Enviado em 12/11/2011 - 18:38h

Com imagem no corpo do email, so criando um email em HTML.


5. Re: URGENTE!!! (EMAILS)

Adriano Moreira da Silva
adri3d

(usa Arch Linux)

Enviado em 12/11/2011 - 20:12h

marangon escreveu:
Com imagem no corpo do email, so criando um email em HTML.


também, pensei que foce fácil(em PHP é ) ,

o desafio é faz em shell script, mandando a imagem no mesmo email não apenas uma referencia.

esse código manda a imagem em base64 embutida no html, nas não funciona nos web-mails populares

#!/bin/bash
email_de="$USER@$HOSTNAME"
servidor_smtp="$HOSTNAME"
assunto="mensage em html"
lista_emails=/media/hdmontado/lista.txt
image=1321067897.png
image64="data:image/png;base64,$(openssl enc -base64 -in $image | tr -d '\n')"
mensage="

<body>
<h3>Titulo</h3>
<img src='$image64' alt='$image'>
</body>

"

#echo $mensage > mensage.html

while read email_para
do
echo $mensage | sendEmail -f $email_de -t $email_para -u $assunto -s $servidor_smtp -o message-content-type=html
done < $lista_emails



6. Re: URGENTE!!! (EMAILS)

Luis Vitorio
vitorioluis

(usa Debian)

Enviado em 12/11/2011 - 20:29h

Acabei de testar aqui no Ubuntu 10.04 só precisei instalar o sendemail:

#aptitude install sendeemail


Ah funcionou perfeitamente.....


7. sou [*****]

Adriano Moreira da Silva
adri3d

(usa Arch Linux)

Enviado em 13/11/2011 - 16:01h

tive que montar muita coisa na unha mas esta ai


#!/bin/bash
###############################################################################
#Adriano Moreira, novembro de 2011, tarde muito chuvosa de domingo
#shell script para mandar emails, com imagens inbutidas no corpo da na mensage
#as imagens devem estar no diretorio em uso(pwd)
###############################################################################


###############################################################################
#Primeira parte: Personalização

#exemplo: "Adriano Moreira <adri3d@gmail.com>"
email_de="$USER <$USER@$HOSTNAME>"

#Como usar:
#exemplo1: "Marcelo <marcelo@exemplo.com>"
#exemplo2: "Marcelo <marcelo@exemplo.com>, Tania<marcelo@exemplo.com>, ..."
#uma dica:para enviar varios emails sem mostrar na mensage quem mais recebeu
#troque esse valor por um parametro e chame esse script apartir de outro
email_para="Raul Seixas <raul@sky.net"

#use a criatividade
assunto="email $(uptime)"

#função que gera o cid para a tag img no html
echo "" > lista_images
function addimg(){
echo $1 >> lista_images
echo "cid:$( echo $1 | md5sum | awk '{print $1}' )"
}

##Aqui esta o corpo da mensage em html
#Como usar:
#na tag img troque o src="foto.jpg" por src="$(addimg foto.jpg)"
html="
<!-- aqui uma mensage em texto -->
<p>bla bla bla<p>

<!-- aqui umas images -->
<img src=\"$(addimg 02.png)\" alt=\"texto alternativo da image 02\">
<img src=\"$(addimg 01.png)\" alt=\"texto alternativo da image 01\">
"


###############################################################################
#Segunda Parte: Montando o Email na unha

boundary="--$(uptime | md5sum | awk '{print $1}')"

(
#cabeçalho
echo "To: $email_para"
echo "Subject: $assunto"
echo "MIME-Version: 1.0"
echo "Content-Type: multipart/mixed; boundary=\"$boundary\""
echo "From: $email_de"
echo
#corpo
echo "--$boundary"
echo "Content-Type: text/html; charset=utf-8"
echo "Content-Transfer-Encoding: Quot-Printed"
echo

echo "$html"
echo

for image in $(cat lista_images); do
echo
echo "--$boundary"
imagetype="$( echo $image | awk -F. '{print $NF}')"
case $imagetype in
png | PNG ) echo -n "Content-Type: image/png" ;;
jpg | JPG | jpeg | JPEG ) echo -n "Content-Type: image/jpeg" ;;
gif | GIF ) echo -n "Content-Type: image/gif" ;;
*) echo -n "Content-Type: image/$imagetype" ;;
esac
echo "; file_name = \"$image\"";
echo "Content-ID: <$( echo $image | md5sum | awk '{print $1}' )>";
echo "Content-Transfer-Encoding: base64";
echo "Content-Disposition: inline; filename = \"$image\";"
echo
echo $(openssl enc -base64 -in $image)
done

echo
echo "--$boundary"
) > mail_file

###############################################################################
#Parte Final: Enviando o email
for destinatario in $(echo $email_para | awk -F, '{print $1}');
do
cat mail_file| sendmail -t "$destinatario"
done


valeu apena montar ele aprendi muita coisa que queria saber faz tempo


8. Obrigado!

Alex Fernando
showd07

(usa Debian)

Enviado em 14/11/2011 - 10:57h

Estou cheio de serviço, mas logo eu testo esse scriptbem detalhado caro amigo. obrigado mesmo!!