Linux發郵件之mail命令


一、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]$

 

說明:建議直接使用命令 ,有腳本只是為了在打印顯示相關信息,多此一舉。

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM