linux发送邮件的shell脚本

类别:软件工程 点击:0 评论:0 推荐:

#!/bin/sh

function echo_help(){
?echo "Usage:"
?echo "sh mailto.sh -to mailaddr -file messagefilename [-from frommailaddr] [-subject mailsubject] [-fname showname] [-tname toshowname]"
}

email="[email protected]"
emailname="Test Mail"
messagebody="tmp.tmp"
from="[email protected]"
fromname="MailReport"
subject="Mail Report"

until [ $# -eq 0 ]
do
?tmpV=$1

?if [ $tmpV = "-from" ] ; then
??shift
??tmpV=$1
??from=$tmpV
?elif [ $tmpV = "-to" ] ; then
??shift
??tmpV=$1
??email=$tmpV
?elif [ $tmpV = "-subject" ] ; then
??shift
??tmpV=$1
??subject=$tmpV
?elif [ $tmpV = "-file" ] ; then
??shift
??tmpV=$1
??messagebody=$tmpV
?elif [ $tmpV = "-fname" ] ; then
??shift
??tmpV=$1
??fromname=$tmpV
?elif [ $tmpV = "-tname" ] ; then
??shift
??tmpV=$1
??emailname=$tmpV
?elif [ $tmpV = "--help" -o $tmpV = "-h" ] ; then
??echo_help
??exit 1
?fi

?shift
done

if ! test -f ${messagebody} ; then
?echo "${messagebody} not exists!"
?echo_help
?exit 2
fi

echo "begin send..."

echo -e "To: \"${emailname}\" \nFrom: \"${fromname}\" \nSubject: ${subject}\n\n`cat ${messagebody}`" | /usr/sbin/sendmail -t

echo "send OK."

本文地址:http://com.8s8s.com/it/it36005.htm