如何在openwrt中使用crontab在特定时间只运行一次reboot命令?
答
如果你只想运行一次,那么更好的ssh openwrt然后去终端并输入reboot。这将重新启动系统。
如果你想在特定的时间重启重启,那么你可以去cronjob。它具有以下语法
* * * * * command to be executed
- - - - -
| | | | |
| | | | +----- day of week (0 - 6) (Sunday=0)
| | | +------- month (1 - 12)
| | +--------- day of month (1 - 31)
| +----------- hour (0 - 23)
+------------- min (0 - 59)
使用您的OpenWrt以下命令行命令打开基于上述语法,你可以告诉何时运行脚本
EG的crontab
crontab -e //-e stands for edit
现在:要在每年1月1日运行,您可以编写以下命令:
* * 1 1 * reboot
保存文件,它会做的伎俩。
答
我假设只说一次,你的意思是一天只有一次?如果是这种情况,请执行以下操作:
crontab -e
在那里添加以下行并保存该文件。
15 3 * * * reboot
现在重新启动cron服务
/etc/init.d/cron restart
将在上午03时15分路由器日常重启。
答
的OpenWrt的crontab不支持@reboot,所以你可以用一分钟一次的命令:
*****
,然后在你的脚本检查要执行,如果有壳上运行没有它的实例。
但是,您也可以使用rc.local并将脚本放在上面。只要不要忘记让rc.local可执行权限,有时它需要更改权限。
如果它是服务,另一个选项也在/etc/init.d/中运行。
嗨,我的意思只有一次,该设备。不是每天一次 –
有很多方法。使用适合你的东西。就像你可以使用自我删除脚本一样。该脚本将执行您的命令并最终删除自己。在脚本的末尾使用rm - “$ 0”。它会自行删除。另一种方法是,您也可以在执行命令后创建一个文件,然后检查该文件是否存在。如果是这样,请退出脚本。 –