一、mail命令
1.配置
vim /etc/mail.rc文件尾增加以下內容
set from= 1968089885@qq.com smtp="smtp.qq.com"
set smtp-auth-user=" 1968089885@qq.com" smtp-auth-password=" 123456"
set smtp-auth=login
說明:from: 對方收到郵件時顯示的發件人
smtp: 指定第三方發送郵件的smtp服務器地址
smtp-auth: SMTP的認證方式。默認是LOGIN,也可改為CRAM-MD5或PLAIN方式
smtp-auth-user: 第三方發郵件的用戶名
smtp-auth-password: 用戶名對應密碼
2.Mail命令
% mail --h
mail: illegal option -- -
Usage: mail -eiIUdEFntBDNHRV~ -T FILE -u USER -h hops -r address -s SUBJECT -a FILE -q FILE -f FILE -A ACCOUNT -b USERS -c USERS -S OPTION users注:部分系統參數稍有差異,最好看幫助
1) 無郵件正文
- mail -s "主題" 收件地址
% mail -s " 測試 " 1968089885@foxmail.com
2) 有郵件正文
- mail -s "主題" 收件地址< 文件(郵件正文.txt)
% mail -s " 郵件主題 " 1968089885@foxmail.com < /data/findyou.txt
- echo "郵件正文" | mail -s 郵件主題 收件地址
% echo " 郵件正文內容 " | mail -s " 郵件主題 " 1968089885@foxmail.com
- cat 郵件正文.txt | mail -s 郵件主題 收件地址
% cat /data/findyou.txt | mail -s " 郵件主題 " 1968089885@foxmail.com
3) 帶附件
- mail -s "主題" 收件地址 -a 附件 < 文件(郵件正文.txt)
% mail -s " 郵件主題 " 1968089885@foxmail.com -a /data/findyou. tar.gz < /data/findyou.txt
3.腳本
sendmail.sh
#!/bin/bash
#author:findyou
help(){
echo " eg: $0 [Subject] [address] [content_file] [file] "
echo ""
exit 1
}
if [ ! -n " $1 " ] ; then
help
fi
cDate=` date +%Y%m%d`
if [ ! -n " $2 " ] ; then
help
else
mail_to=$ 2
echo " Send Mail to ${mail_to} "
fi
if [ ! -n " $4 " ] ; then
mail -s $ 1 ${mail_to}<$ 3
else
mail -s $ 1 -a $ 4 ${mail_to}<$ 3
fi
使用
[root@ 123]$ ./sendmail. sh test 1968089885@qq.com abc.txt
Send Mail to 1968089885@qq.com
[root@ 123]$
說明:建議直接使用命令 ,有腳本只是為了在打印顯示相關信息,多此一舉。