Linux下mail/mailx命令发送邮件

最近看到项目中经常会用mail/mailx命令发送由java程序生成的report,比较新鲜。下面就简单介绍下mail/mailx命令用法。本文以mail命令举例(mail/mailx)效果都是一样的。

把打印的内容作为标准输入,送给mail命令
[root@toughhou www]# echo "Hello, Tough" | mail -s "Tough's Greeting" [email protected]

-s表示主题,"< mail.txt"表示把mail.txt里的内容作为邮件正文
[root@toughhou www]# mail -s "Tough's Greeting" [email protected] < mail.txt 

也可以用cat mail.txt的输出作为mail命令的标准输入,作为邮件正文
[root@toughhou www]#cat mail.txt | mail -s "Tough's Greeting" [email protected]

-c表示抄送的地址([email protected],[email protected]),[email protected]是直接发送的地址
[root@toughhou www]# mail -s "Tough's Greeting" -c "[email protected],[email protected]" "[email protected]" < mail.txt 

测试发现,用uuencode发地附件,在邮箱里是不能正常显示的,是一些“乱码”,需要额外的解码命令,总之不太好用
[root@toughhou www]# uuencode /home/tough/pic/a.png "Tough's Photo" | mail -s "Pic Test" [email protected]

在网上看到的伪造发件人地址方法(-- -f后跟发发件人地址,-F发件人名称),测试之后效果也不太理想
[root@toughhou www]# mail -s Tough [email protected] < mail.txt -- -f [email protected] -F TOUGH

 

 

你可能感兴趣的:(linux)