2014-09-04 3 views
2

본문에 첨부 파일과 HTML 코드가있는 mailx를 사용하여 전자 메일을 보내려고합니다. Content-type을 "text/html"메일로 설정하면 파일 대신 이진 내용이 첨부됩니다.mailx를 사용하여 첨부 파일과 html 본문을 사용하여 보내는 방법

echo "" >> $MAILFILE 
echo "<HTML>" >> $MAILFILE 
echo "<HEAD>" >> $MAILFILE 
echo "</HEAD>" >> $MAILFILE 
echo "<BODY>" >> $MAILFILE 
echo "<table border="1">" >>$MAILFILE 
echo "<tr bgcolor=#C0C0C0>" >>$MAILFILE 
echo "<td><b>OUTAGE</b></td>" >>$MAILFILE 
echo "<td>$OUTAGE_COUNT</td>" >>$MAILFILE 
echo "</tr> </table><br>" >>$MAILFILE 
echo "</table>" >> $MAILFILE 
echo "</BODY></HTML>" >> $MAILFILE 

(uuencode outage.zip outage.zip;cat $MAILFILE) | mailx -s "Outage Payments Status 
Content-type: text/html" $distro -- -f ${EMAIL_FROM} 

결과 - 바디의 이메일 :

begin 644 outage.zip M4$L#!!0````(`,:$(T5RYN"0#P```.D#```3`!4`;W5T86=E7W!A>6UE;G1S M+F-S=E54"0`#)&X'5"1N!U15>`0`[email protected]@`(3A5$P"D;!,`5<&%Y;65N=',N8W-V550%``,D;@[email protected]``%!+!08``````0`!`$X```!5 %```````` ` end 

답변

0
Instead use sendmail as follows : 

#!/usr/bin/ksh 

export MAILTO="[email protected]" 
export SUBJECT="Mail Subject" 
export BODY="/tmp/email_body.html" 
export ATTACH="/tmp/attachment.txt" 
(
echo "To: $MAILTO" 
echo "Subject: $SUBJECT" 
echo "MIME-Version: 1.0" 
echo 'Content-Type: multipart/mixed; boundary="-q1w2e3r4t5"' 
echo 
echo '---q1w2e3r4t5' 
echo "Content-Type: text/html" 
echo "Content-Disposition: inline" 
cat $BODY 
echo '---q1w2e3r4t5' 
echo 'Content-Type: application; name="'$(basename $ATTACH)'"' 
echo "Content-Transfer-Encoding: base64" 
echo 'Content-Disposition: attachment; filename="'$(basename $ATTACH)'"' 
uuencode -m $ATTACH $(basename $ATTACH) 
echo '---q1w2e3r4t5--' 
) | /usr/sbin/sendmail $MAILTO