1 #!/bin/bash
2 #
3 # Filename: sendSMS.sh
4 # Revision: 1.0
5 # Date: 2014/09/11
6 # Author: Qicheng
7 # Email:
8 # Website: http://qicheng0211.blog.51cto.com/
9 # Description: zabbix短信告警脚本
10 # Notes: 短信网关使用了中国网建SMS短信通
11 #
12
13 # 脚本的日志文件
14 LOGFILE="/tmp/SMS.log"
15 :>"$LOGFILE"
16 exec 1>"$LOGFILE"
17 exec 2>&1
18
19 MOBILE_NUMBER=$1 # 手机号码
20 MESSAGE_UTF8=$3 # 短信内容
21 # XXD="/usr/bin/xxd" #这行看不懂是干什么的
22 CURL="/usr/bin/curl" #这行也是半懂不懂的
23 TIMEOUT=5
24 # 短信内容要经过URL编码处理,除了下面这种方法,也可以用curl的--data-urlencode选项实现。
25 MESSAGE_ENCODE=$(echo "$MESSAGE_UTF8" | ${XXD} -ps | sed 's/\(..\)/%\1/g' | tr -d '\n')
26
27 # Uid和Key的值需要自行修改,http://www.smschinese.cn/api.shtml
28 # Uid 网站用户名
29 # Key 接口秘钥
30 Uid="*****"
31 Key="*****"
32 # SMS API
33 URL="http://utf8.sms.webchinese.cn/?Uid=${Uid}&Key=${Key}&smsMob=${MOBILE_NUMBER}&smsText=${MESSAGE_ENCODE}"
34
35 # Send it
36 set -x
37 ${CURL} -s --connect-timeout ${TIMEOUT} "${URL}" #最后一行也不懂
哪位大神解释下21、22、37 这三行是干什么的》???
21 22只是把xxd和curl赋值一下
37就是curl调用发短信了