Adiciona imagens ao email
Publicado por Adriano Moreira da Silva (última atualização em 15/11/2011)
[ Hits: 5.965 ]
Homepage: http://adrianomoreira.eti.br
Download enviarEmailComImagensNoCorpo.sh
Shell script para mandar emails, com imagens embutidas no corpo html da mensagem.
#!/bin/bash ############################################################################### #Adriano Moreira, novembro de 2011, tarde muito chuvosa de domingo #Shell script para mandar emails, com imagens embutidas no corpo da mensagem, #as imagens deverão estar no diretório 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 mensagem 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 mensagem 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
Manipulação dos arquivos criados pelo Motion
Assistindo vídeo na TV e controlando no monitor com o xine
Script para Remover Ascentos em arquivos HTML
usando o jSMS direto do pendrive (v2.0)
Nenhum comentário foi encontrado.
Como agendar um backup automático do PostgreSQL no Cron evitando o problema de senha
Como preparar o Vim/Neovim para corrigir ortografia em português
Dark Web e Malwares na internet, quanto custa?
Configuração básica do Conky para mostrar informações sobre a sua máquina no Desktop
Exportação de histórico do Brave para o Firefox
Remapear e/ou trocar teclas no Linux
Alexabolada casa comigo por favor, larga o Fábio e o VOL e vem comigo!... (12)
synalogy servidor de arquivos (2)
Atalho ctrl + Alt + T não funciona (2)
Não consigo fazer o adptador para cabo de rede funcionar (17)