轉載:http://www.cnblogs.com/softwaretesting/archive/2011/11/23/2260520.html
http://www.cnblogs.com/softwaretesting/archive/2011/11/23/2260520.html
mailx是UNIX系統上用來處理郵件的工具,使用它可以發送,讀取郵件。下面看看如何使用它來發送郵件。
發送格式
mailx -s subject user@xxx.com < message_file
假設郵件內容存儲於msg文件中,那么可以用如下方法:
mailx -s "test mail" zdd@163.com < msg
或者
cat msg | mailx -s "test mail" zdd@163.com
多個收件人之間用逗號分隔
cat msg | mailx -s "test mail" zdd@163.com,zdd2@163.com,zdd2@163.com
也可以直接從命令行輸入郵件內容:
mailx -s "test mail" zdd@163.com
上面這條命令會進入命令行輸入狀態,此時可以輸入內容,按Ctrl+d鍵來結束輸入。
其他選項
-r 指定發件人
-c 指定抄送人
-b 指定密送人
多個收件人之間用逗號分隔
mail和mailx基本是一樣的,用法差不多
把打印的內容作為標准輸入,送給mail命令
[root@toughhou www]# echo "Hello, Tough" | mail -s "Tough's Greeting" toughhou@126.com
-s表示主題,"< mail.txt"表示把mail.txt里的內容作為郵件正文
[root@toughhou www]# mail -s "Tough's Greeting" toughhou@126.com < mail.txt
也可以用cat mail.txt的輸出作為mail命令的標准輸入,作為郵件正文
[root@toughhou www]#cat mail.txt | mail -s "Tough's Greeting" toughhou@126.com
-c表示抄送的地址(houxiaolongr@126.com,houxiaolongr@163.com),toughhou@126.com是直接發送的地址
[root@toughhou www]# mail -s "Tough's Greeting" -c "houxiaolongr@126.com,houxiaolongr@163.com" "toughhou@126.com" < mail.txt
測試發現,用uuencode發地附件,在郵箱里是不能正常顯示的,是一些“亂碼”,需要額外的解碼命令,總之不太好用
[root@toughhou www]# uuencode /home/tough/pic/a.png "Tough's Photo" | mail -s "Pic Test" toughhou@126.com
在網上看到的偽造發件人地址方法(-- -f后跟發發件人地址,-F發件人名稱),測試之后效果也不太理想
[root@toughhou www]# mail -s Tough toughhou@126.com < mail.txt -- -f toughhou@qq.com -F TOUGH