这是网络上一个shell脚本,配合crontab来以秒为单位执行任务
- crontab.sh
#!/bin/bash
step=1
for ((i = 0; i < 60; i = (i + step))); do
echo $step
sleep $step
done
exit 0
问题
在 openwrt 路由器上执行报错 syntax error: bad for loop variable
原因
openwrt
默认使用的是 ash
,不支持 bash
解决方法
我们只需要执行 shell 脚本,所以不需要整个将ash替换为bash。只需要 安装 bash 然后以bash来运行脚本
opkg update
opkg install bash
/bin/bash crontab.sh #这样执行脚本正常
crobtab -e ## 添加计划任务
* * * * * /bin/bash crontab.sh
发表评论 取消回复