今天朋友叫我帮忙写一个shell脚本,主要用于服务器批量调用接口,并将结果打印记录下来,在此做一个简单的记录:
#!/bin/bash
#定义要执行的地址数组
urlArr[0]='http://www.baidu.com?a=1'
urlArr[1]='http://www.baidu.com?a=2'
urlArr[2]='http://www.baidu.com?a=3'
urlArr[3]='http://www.baidu.com?a=4'
urlArr[4]='http://www.baidu.com?a=5'
token='100'
#循环执行
for i in ${urlArr[@]}; do
# -H需要在-X前面,不然会出现http响应码为000的情况
code=$(curl -m 5 -s -o /dev/null -w "%{http_code}" -H 'token:$token' -X POST $i)
state='fail'
if [[ $code == 200 ]]; then
state='Sucess'
fi
echo $code "->" $state "->" $i "->" ${i#*"?"}
#每次执行等待1秒
sleep 1
done
启动命令:sh curl_test.sh >> result.log