shell 实现发邮件与IM消息

本文档详细介绍了在Linux环境下使用sendmail发送普通邮件及带附件邮件的方法,包括安装、启动sendmail服务,以及使用mail命令发送邮件的具体步骤。此外,还提供了通过curl发送小黄鸭消息的示例脚本。

1. 发邮件

邮件不能发送成功时,要检查一下是否有出网权限(可以找运维开通)

1.1 普通邮件发送流程

# 1.安装sendmail
yum -y install sendmail
备注: centos-->yum; ubuntu-->apt-get

# 2.启动sendmail
sendmail start

# 3.提示mail命令时,进行安装mail
yum -y install mailx

# 4.发送邮件
echo "ce shi yi xia" | mail -s "test" xx@163.com
cat test.txt | mail -s "test" xx@163.com
mail -s "Title" 123456@163.com < file.txt

# 5.向多个地址发送邮件
echo "send multiple mails" | mail -s "Multi" 11@163.com,22@163.com,33@163.com

1.2 带附件的邮件发送

         如果你的系统中没有uuencode命令的话,并且你已经配好了yum仓库;(yum仓库配置可以参看我的其他文档:http://www.cnblogs.com/zhousir1991/archive/2011/03/05/1971879.html)请先安装sharutils  (yum install sharutils)

 uuencode 需要两个参数,第一个是你要发送的文件,当然这个也可以用管道来做,第二个是显示的文件名。

uuencode /home/zz/httpd.conf |mail -s mailtest zz@163.com
tar czf - /home/zz/ | uuencode home.tgz |mail -s mailtest zz@163.com

2. 发送小黄鸭消息

#!/bin/bash
source /etc/profile
# 发送小黄鸭
function alert() {
    mid=`date '+%s'`
    data='{
        "from":"999999@youni",
        "to":"208198913@muc.youni",
        "type":1,
        "createTime":0,
        "body":"[zz任务]\n表名:'$1'\n状态:未生成最新分区数据!!!",
        "mid":"'$mid'"
    }'

    curl -H "Content-Type: application/json" \
        -X POST \
        -d ${data}  \
        "http://10.135.16.6:8088/ipush/message/push"
}

 

调用

alert table_name


 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值