利用命令行使用smtp发送邮件

来源:互联网 发布:windows10网络受限 编辑:程序博客网 时间:2024/06/05 12:05

在服务器以及一些大型操作的使用上,经常会有一个需求,就是将运行状态或者运行结果发送邮件给相关人员,利用命令行发邮件是一个非常常用、非常便捷的方式,本文简单介绍下利用Linux自身带的mail程序来进行发送邮件。

默认情况下,mail程序都会被安装,在Ubuntu下,可能会使用esmtp包,RHEL(CentOS, Scientific Linux)则貌似不需要,已经安装好了。

现在主要的操作是建立或者修改用户目录下的.mailrc文件,样例如下:

set from=XXX@XXX.comset smtp=smtp.XXX.comset smtp-auth-user=XXX@XXX.comset smtp-auth-password=*******set smtp-auth=login

在RHEL环境下,现在就可以使用下面的命令进行发送邮件了:

mail -s "主题" to1@xxx.com -c to2@xxx.com,to3@xxx.com < mailbody.txt

这里-s后面是邮件标题,-c后面是抄送,mailbody.txt是事先编写好的邮件体,这在自动化操作下非常方便,可以在脚本里面定制。

如果上面的操作成功了,则说明邮件发送成功,你可以查收下收件箱了。如果不成功,则查看下sendmail服务是否启动,这个很重要。而在Debian或者Ubuntu下,使用的是exim4,因此需要修改一个文件/etc/exim4/update-exim4.conf,修改如下:

dc_eximconfig_configtype=’local’

修改为

dc_eximconfig_configtype=’internet’

重启exim4,这就可以使用外部smtp发送邮件了。

如果想使用的是gmail,可以参考这里:

set smtp-use-starttlsset smtp=smtp://smtp.gmail.com:587set smtp-auth=loginset smtp-auth-user=your-user-name@gmail.comset smtp-auth-password=your-passwordset from="the return address you want"

当然,基于安全考虑,最好将.mailrc权限设置为0600。

现在可以编写脚本来将一些在线的任务状态及时发送给自己或者相关人员。另外如果你拥有的是中国移动的139邮件,你可以将邮件发送到这个邮箱里面,则收到邮件的同时,你的手机也会收到一个短信。大家不妨试试。

 

在服务器以及一些大型操作的使用上,经常会有一个需求,就是将运行状态或者运行结果发送邮件给相关人员,利用命令行发邮件是一个非常常用、非常便捷的方式,本文简单介绍下利用Linux自身带的mail程序来进行发送邮件。

默认情况下,mail程序都会被安装,在Ubuntu下,可能会使用esmtp包,RHEL(CentOS, Scientific Linux)则貌似不需要,已经安装好了。

现在主要的操作是建立或者修改用户目录下的.mailrc文件,样例如下:

set from=XXX@XXX.comset smtp=smtp.XXX.comset smtp-auth-user=XXX@XXX.comset smtp-auth-password=*******set smtp-auth=login

在RHEL环境下,现在就可以使用下面的命令进行发送邮件了:

mail -s "主题" to1@xxx.com -c to2@xxx.com,to3@xxx.com < mailbody.txt

这里-s后面是邮件标题,-c后面是抄送,mailbody.txt是事先编写好的邮件体,这在自动化操作下非常方便,可以在脚本里面定制。

如果上面的操作成功了,则说明邮件发送成功,你可以查收下收件箱了。如果不成功,则查看下sendmail服务是否启动,这个很重要。而在Debian或者Ubuntu下,使用的是exim4,因此需要修改一个文件/etc/exim4/update-exim4.conf,修改如下:

dc_eximconfig_configtype=’local’

修改为

dc_eximconfig_configtype=’internet’

重启exim4,这就可以使用外部smtp发送邮件了。

如果想使用的是gmail,可以参考这里:

set smtp-use-starttlsset smtp=smtp://smtp.gmail.com:587set smtp-auth=loginset smtp-auth-user=your-user-name@gmail.comset smtp-auth-password=your-passwordset from="the return address you want"

当然,基于安全考虑,最好将.mailrc权限设置为0600。

现在可以编写脚本来将一些在线的任务状态及时发送给自己或者相关人员。另外如果你拥有的是中国移动的139邮件,你可以将邮件发送到这个邮箱里面,则收到邮件的同时,你的手机也会收到一个短信。大家不妨试试。

原创粉丝点击