欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

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

程序员文章站 2022-10-14 08:44:30
1. 安装msmtp luther@gliethttp:~$ sudo apt-get install msmtp 2. 编辑配置脚本(~/.msmtprc是默认配置文件,...
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 luther@gliethttp.cn
auth off
password 123456789
account default : luther_test

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

luther@gliethttp:~$ chmod 600 msmtprc

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

可能文件中的部分数据会丢失,不怕,当我们安装mutt之后就一切正常了.
luther@gliethttp:~$ msmtp luther@gliethttp.cn -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 from=admin@gliethttp.cn
set realname="测试admin"
set editor="vim"

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

luther@gliethttp:~$ echo "测试123abc" | mutt -f /home/luther/muttrc -s "邮件标题 - 测试" luther@gliethttp.cn
luther@gliethttp:~$ mutt -f /home/luther/muttrc -s "邮件标题 - 测试" luther@gliethttp.cn < /etc/passwd

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

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

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

luther@gliethttp:~$ echo "测试123abc" | mutt -f /home/luther/muttrc -s "
邮件标题 - 测试" luther@gliethttp.cn,luther.ge@163.com -b luther.ge@163.com,luther@gliethttp.cn -c   luther.ge@163.com,luther@gliethttp.cn