Linux mail命令发送邮件

linux mail 命令参数:
使用mail发邮件时,必须先将sendmail服务启动。
mail –s “邮件主题” –c”抄送地址” –b “密送地址” -- -f 发送人邮件地址 –F 发件人姓名 < 要发送的邮件内容

三种常用格式发信
  mail -s test [email protected] #第一种方法,你可以把当前shell当成编辑器来用,编辑完内容后Ctrl-D结束
  echo "mail content" |mail -s test [email protected] #第二种方法,我用的最多,可能是喜欢管道的缘故吧
  mail -s test [email protected] < file #第三种方法,以file的内容为邮件内容发信

指定特定的发送人:
$ mail -s "just a test" 收信人邮箱地址 < 要发送的邮件内容文件 -- -f 发送人邮件地址 -F 发件人姓名
效果是: 信件内容将发送给 收信人邮箱,显示的发送人为 发送人姓名<发送人邮件地址>,显示的内容为 发送的邮件内容...
包含命令执行结果的MAIL发送:
echo -e `ls /tmp`|mail -s "test" [email protected] < /tmp/dd.txt -- -f [email protected] -F cc
 
i 忽略 tty 的中断讯号。(interrupt)
I 强迫设成互动模式。(Interactive)
v 列印出讯息,例如送信的地点、状态等等。(verbose)
n 不读入 mail.rc 设定档。
s 邮件标题。
c cc 抄送邮件地址。
b bcc密送邮件地址。
 
需要sendmail或postfix服务
 如果单纯的发文件文件可以用
cat xxxx.txt |mail -s "主旨" [email protected] [email protected]
如果需要发送附件需要安装uuencode来编码 (yum install sharutils)
单独发附件,这样[email protected]会收到一个data.txt的附件
uuencode /tmp/data_process.log  data.txt |mail [email protected]
如果需要正文和附件一起发:
uuencode /tmp/data_process.log  data.txt > /tmp/data_temp.txt

你可能感兴趣的:(linux)