浅析linux下如何用脚本自动发送文本mail邮件

1. 安装msmtp

luther@gliethttp:~$ sudo apt-get install msmtp

2. 编辑配置脚本(~/.msmtprc是默认配置文件,也可以使用-C选项指定配置文件路径)

luther@gliethttp:~$ vim msmtprc
#添加如下内容
defaults
#logfile /home/luther/msmtp.log
account luther_test
host mail.gliethttp.cn
from [email protected]
auth off
password 123456789
account default : luther_test

3. 去掉配置文件的执行权限-x

luther@gliethttp:~$ chmod 600 msmtprc

4. 好了,可以使用下面语句发送一个测试邮件到自己的邮箱了,或者在stdin上输入,然后ctrl+D

可能文件中的部分数据会丢失,不怕,当我们安装mutt之后就一切正常了.
luther@gliethttp:~$ msmtp [email protected] -C /home/luther/msmtprc < /vobs/tmp/log.c

5. 接着安装mutt

luther@gliethttp:~$ sudo apt-get install mutt

6. 编辑配置脚本(~/.muttrc是默认配置文件,也可以使用-F选项指定配置文件路径)

luther@gliethttp:~$ vim muttrc
#添加如下内容
set sendmail="/usr/bin/msmtp -C /home/luther/msmtprc"
set use_from=yes
set [email protected]
set realname="测试admin"
set editor="vim"

7. 发送普通文本和文件内容

luther@gliethttp:~$ echo "测试123abc" | mutt -F /home/luther/muttrc -s "邮件标题 - 测试" [email protected]
luther@gliethttp:~$ mutt -F /home/luther/muttrc -s "邮件标题 - 测试" [email protected] < /etc/passwd

8. 发送附件(-a选项用来添加附件,下面这个例子添加了passwd和resolv.conf这2个附件)

luther@gliethttp:~$ echo "测试123abc" | mutt -F /home/luther/muttrc -s "邮件标题 - 测试" [email protected] -a /etc/passwd -a /etc/resolv.conf

9. bcc地址和cc抄送地址发送,如果多个邮件地址,使用逗号分隔即可

luther@gliethttp:~$ echo "测试123abc" | mutt -F /home/luther/muttrc -s "
邮件标题 - 测试" [email protected],[email protected] -b [email protected],[email protected] -c   [email protected],[email protected]

你可能感兴趣的:(浅析linux下如何用脚本自动发送文本mail邮件)