前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >linux shell 发送email 邮件

linux shell 发送email 邮件

作者头像
阳光岛主
发布2019-02-19 16:09:57
3.5K0
发布2019-02-19 16:09:57
举报
文章被收录于专栏:米扑专栏米扑专栏

方法一:简单邮件发送

echo 'hello world' | mail -s "Subject" -t  yanggang@ithomer.com,yanggang_2050@163.com    -a From:463103470@qq.com

效果截图

方法二: 文本格式发送邮件

代码语言:javascript
复制
# !/bin/sh

from_name="from@yanggang"
from="yanggang@fruitsmobile.com"
to="yanggang_2050@163.com"

email_title="Test Mail"
email_content="/home/barry/top800/test/output_email.html"
email_subject="Top800_Games_Free_USA"

echo -e "To: \"${email_title}\" <${to}>\nFrom: \"${from_name}\" <${from}>\nSubject: ${email_subject}\n\n`cat ${email_content}`" | /usr/sbin/sendmail -t

效果截图:

方法三:html格式发送邮件

代码语言:javascript
复制
# !/bin/sh


from='yanggang@fruitsmobile.com'
to='yanggang_2050@163.com'

email_date=''
email_content='/home/barry/top800/test/output_email.html'
email_subject='Top800_Game_Free_USA'


function send_email(){
    email_date=$(date "+%Y-%m-%d_%H:%M:%S")
    echo $email_date

    email_subject=$email_subject"__"$email_date
    echo $email_subject

    cat $email_content | formail -I "From: $from" -I "MIME-Version:1.0" -I "Content-type:text/html;charset=gb2312" -I "Subject: $email_subject" | /usr/sbin/sendmail -oi $to

}

send_email

效果截图:

源码下载(linux shell 发送email 邮件)

--------------------------------

CentOS是一个非常不错的免费开源Linux系统,许多站点首选的平台。

然而CentOS默认不能发送邮件,需要发送邮件的童鞋可以安装一个sendmail程序。 安装sendmail 执行: [root@vps478753 ~]# yum -y install sendmail 程序会自动搜索出sendmail安装程序自动安装,安装好sendmail以后执行以下命令启动sendmail [root@vps478753 ~]# /etc/init.d/sendmail start Starting sendmail:                                         [  OK  ] Starting sm-client:                                        [  OK  ] 启动以后我们可以执行mail命令测试一下是否能发送邮件 一、通过文件内容发送邮件 [root@vps478753 ~]# mail -s 'Test mail' support@ithomer.net < /etc/passwd 很快收到邮件了,正文是 /etc/passwd 文件的内容 二、使用管道符直接发送邮件内容 如果不想通过文件发送邮件内容也可以这么发送 [root@vps478753 ~]# echo "This is test mail" | mail -s 'Test mail' support@ithomer.net 以上效果同文件发送邮件内容一样 如果提示mail: command not found [root@vps478753 ~]# mail -s 'Test mail' support@ithomer.net < /etc/passwd -bash: mail: command not found 那么就是没有安装mail命令,此时需要安装mail命令 [root@vps478753 ~]# yum install mailx -y 然后再重新发送以下邮件就好了!

参考推荐:

4 Ways to Send Email From Linux Command Line

shell 发邮件命令之 mail

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2011年09月14日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档