#!/bin/bash
wx(){
#将下面的webhook地址替换成你的企业微信机器人地址,$1为告警消息 $2为@人的手机号 $2可以为空
cat > $0.msg << EOF
curl 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=d25d7339-9b15-4b17-80ae-2f546140c349' \
-H 'Content-Type: application/json' \
-d '
{
"msgtype": "text",
"text": {
"content": "$1",
"mentioned_mobile_list":["$2"]
}
}'
EOF
sh $0.msg && rm -rf $0.msg
}
在其他shell脚本里面可以直接source导入就可以发告警了
#!/bin/bash
. /root/wx.sh #导入函数
#调用 传入填写告警信息 需要@谁看 填写手机号(可以不填)
wx "这是一条告警信息" "18888888888"
企业微信告警效果:
新发现shell更简洁的方法 避开上面那种因为shell单引号不能引用变量的问题
测试有空格的数据还是上面那种方法能成功。。。。。- -!
wx(){
curl 'https://qyapi.weixin.qq.com/cgi-bin/webhook/' \
-H 'Content-Type: application/json' \
-d '
{
"msgtype": "text",
"text": {
"content": "'${1}'",
"mentioned_mobile_list":["'${2}'"]
}
}'
}
wx "$1" "$2"