shell 发送短信

前端之家收集整理的这篇文章主要介绍了shell 发送短信前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

话不多说,直接上代码

#!/bin/sh
# 脚本的日志文件
LOGFILE="/tmp/SMS.log"
:>"$LOGFILE"
exec 1>"$LOGFILE"
exec 2>&1

# Uid和Key的值需要自行修改,http://www.smschinese.cn/api.shtml
# Uid 网站用户名
# Key 接口秘钥
OperID="username"
OperPass="userpasswd"

#MOBILE_NUMBER=$1 # 手机号码
MOBILE_NUMBER="17610557369"      # 手机号码
# ${@:2}
#MESSAGE_UTF8=$3 # 短信内容
MESSAGE_UTF8=${@:1}       # 短信内容
XXD="/usr/bin/xxd"
CURL="/usr/bin/curl"
TIMEOUT=5

# 短信内容要经过URL编码处理,除了下面这种方法,也可以用curl的--data-urlencode选项实现。
MESSAGE_ENCODE=$(echo "$MESSAGE_UTF8" | ${XXD} -ps | sed 's/\(..\)/%\1/g' | tr -d '\n')
# SMS API

# 国都线路
#url='http://221.9.10.158:9007/QxtSms/QxtFirewall?OperID='${OperID}'&OperPass='${OperPass}'&SendTime=&ValidTime=&AppendID=02&DesMobile='${MOBILE_NUMBER}'&Content='${MESSAGE_ENCODE}'&ContentType=8'

# 至臻线路
url='http://115.2.12.245:8082/SendMT/SendMessage?UserName='${OperID}'&UserPass='${OperPass}'&Mobile='${MOBILE_NUMBER}'&Content='${MESSAGE_ENCODE}

echo $url

# Send it
set -x
${CURL} -s --connect-timeout ${TIMEOUT} "${url}"

猜你在找的Bash相关文章