我使用 linuxscreen
命令在我的服务器上执行后台脚本。该脚本需要每天运行,但在一定的时间范围内(上午 7 点到晚上 9 点)。截至目前,我每天晚上 9 点手动退出screen
(通过使用ctrl+c
命令),并在第二天早上 7 点重新创建(通过使用)。exit
screen
screen -S <NAME>
有没有办法让screen
晚上 9 点到早上 7 点之间“自动”睡觉? (这样我就不需要每天手动干预。)
答案1
我不会使用屏幕,但如果你坚持的话,你可以这样做:
0 7 * * * some_user sh -c 'screen -d -m -S 7to9am -s /usr/local/bin/the_script.sh ; sleep 2h ; screen -X -S 7to9am quit'
在......的最后/etc/crontab
这正确的做到这一点的方法是没有屏幕:
0 7 * * * some_user timeout 2h /usr/local/bin/the_script.sh