shell 脚本按时间段循环访问某个接口

1.传入开始与结束时间段,每二两个小时访问一次接口,直至开始时间等于结束时间。

dateStart=$1
dateEnd=$2


date_s=`date -d "${dateStart}" +%s`
date_e=`date -d "${dateEnd}" +%s`


while [ "${date_s}" -lt "${date_e}" ];do
       
 statDate=`date -d @${date_s} +"%Y-%m-%d%H"`;

 result_code=`curl  -s -w %{http_code} localhost:8009/mysqlToMongo?start="$statDate"`

if [ "$result_code" == "200" ];then

echo "$statDate 请求成功,响应码是$result_code"
else
echo "$statDate 请求失败,响应码是$result_code"

 break

fi

# do something
        date_s=$((date_s+7200));
done

 

date命令 +%s 可以计算指定日期到1970-01-01 00:00:00的秒数(感觉更像是距离1970-01-01 08:00:00的时间)
```
date -d "1970-01-01 08:00:00" +%s
#结果是 0
```
86400就是一天24小时的总秒数,如果需要在小时级别进行循环,可以每次增加3600
 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值