⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mail_check.sh

📁 自动发邮件的脚本
💻 SH
字号:
#!/bin/sh## This is the mail file#MY_NAME="ELM"		# your nameMY_EMAIL="email@domain" # your emailBIRTHDAY_TITLE="祝福你生日快乐--From $MY_NAME"HOME_DIRECTORY="/home/elm/mail"	# program home dirBIRTHDAY_BODY="birthday.txt"BIRTHDAY_ATTACH="attach/xuyuan.swf"DATA_PATH=dataENTER="
"SPECIAL_CFG=conf/special_date.cfgALL_FRIENDS_CFG=conf/all_friends.cfgSIGN_FILE="conf/sign.txt"OPENSSL=/usr/bin/opensslOPENSSL_OPTIONS="base64"FILE_OPTIONS="-m conf/magic -i"split="Best_wishs_to_you_This_mail_from_${MY_NAME}"PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbinexport PATHSENDMAIL="/usr/sbin/sendmail -t"TODAY=`date '+%m-%d'`FULL_DATE=`date '+%a, %d %b %Y %H:%M:%S %z'`DATE=`date '+%m-%d-%Y'`mail_to_all() {	ALL_USER=`cat ${ALL_FRIENDS_CFG} | grep -v "^#"`	num=1	for m in $ALL_USER	do#		echo $num ${m}		case "${num}" in		  1)			birthday=${m}			;;		  2)			name=${m}			;;		  3)			prettyname=${m}			;;		  4)			num=0			if [ "${special_date}" = "${DATE}" -o "${special_date}" = "${TODAY}" -o "${birthday}" = "${TODAY}" ]; then			TO=`echo ${m} | sed -e 's/^/"'${name}'" </' -e 's/$/>/' -e 's/,/>, "'${name}'" </g'`			TMPFILE=tmpmail.${name}			cat <<EOF > ${TMPFILE}From: "${MY_NAME}" <${MY_EMAIL}>To: ${TO}Bcc: "${MY_NAME}" <${MY_EMAIL}>Return-Path: "${MY_NAME}" <${MY_EMAIL}>Subject: ${prettyname},${comment}Date: ${FULL_DATE}MIME-Version: 1.0Content-Type: multipart/mixed;	boundary="${split}"X-Priority: 3X-MSMail-Priority: NormalX-Mailer: Microsoft Outlook Express 6.00.2800.1158Disposition-Notification-To: "${MY_NAME}" <${MY_EMAIL}>X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165This is a multi-part message in MIME format.--${split}Content-Type: text/plain;	charset="gb2312"Content-Transfer-Encoding: 8bitEOFcat ${DATA_PATH}/${mailfile} | sed -e 's/@@NAME@@/'${prettyname}'/' -e 's/	/      /'  >> ${TMPFILE}cat ${SIGN_FILE} | sed -e 's/@@DATE@@/'${DATE}'/' -e 's/	/      /' >> ${TMPFILE}# check attachmentif [ -n "${attach}" ]; then	MIME_TYPE=`file ${FILE_OPTIONS} ${attach} | cut -d' ' -f2 | sed -e 's/,/;/'`	FILE_NAME=`basename ${attach}`cat <<EOF >> ${TMPFILE}--${split}Content-Type: ${MIME_TYPE}      name="${FILE_NAME}"Content-Transfer-Encoding: base64Content-Disposition: attachment;      filename="${FILE_NAME}"EOF	${OPENSSL} ${OPENSSL_OPTIONS} < ${attach} >> ${TMPFILE}ficat <<EOF >> ${TMPFILE}--${split}--EOF			cat ${TMPFILE} | sed -e 's/$/'${ENTER}'/' > .tmpmail			mv .tmpmail ${TMPFILE}			cat ${TMPFILE} | ${SENDMAIL}			rm -f ${TMPFILE}		echo "${DATE} mail to: ${TO}" >> logs/maillog		fi			;;		  *)			;;		esac				num=`expr ${num} + 1`				done}cd $HOME_DIRECTORYecho "===== Begin check mail user at ${DATE} =====" >> logs/maillogSPECIAL=`cat ${SPECIAL_CFG} | grep -v "^#"`count=1for i in $SPECIALdo#	echo ${count},${i}	case "${count}" in	  1)		special_date=${i}		;;	  2)		comment=${i}		;;	  3)		mailfile=${i}		;;	  4)		count=0		attach=`echo ${i} | sed -e 's/-//'`		if [ "${special_date}" = "${TODAY}" -o "${special_date}" = "${DATE}" ]		then			mail_to_all		fi		;;	  *)		;;	esac	count=`expr ${count} + 1`donespecial_date=""comment=${BIRTHDAY_TITLE}mailfile=${BIRTHDAY_BODY}attach=${BIRTHDAY_ATTACH}mail_to_allecho "====== ${DATE} end of check mail user ======" >> logs/maillog

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -