perl – 如何模拟cron工作
发布时间:2020-12-15 21:27:16 所属栏目:大数据 来源:网络整理
导读:我每天要运行一个脚本(只在周末),但是我不能使用cron作业. 我正在想一个无限循环,睡24小时,检查是否是一个周末,如果是这样执行脚本. 在linux下的bash下,这是一个很好的解决方案? 我目前的实施: #! /bin/bash while [ true ]; do if [[ $(date +%u) -lt 6 ]
我每天要运行一个脚本(只在周末),但是我不能使用cron作业.
我正在想一个无限循环,睡24小时,检查是否是一个周末,如果是这样执行脚本. 在linux下的bash下,这是一个很好的解决方案? 我目前的实施: #! /bin/bash while [ true ]; do if [[ $(date +%u) -lt 6 ]]; then ./program else echo Today is a weekend,processing is skipped. Back to sleep. fi sleep 86400 done 我将在下午五点启动这个剧本. 解决方法
在没有每用户crontabs的那一天,我经常在(1)完成这个使用.
#!/bin/sh ... do stuff... at -f /path/to/me 5pm tomorrow 这样你的脚本会运行并安排自己进行下一次调用. 我不认为你可以指定“下个周末”的时间表,所以你只需要重新安排每一天,如果不是一个周末,你的脚本会退出(在安排下一个工作之后). 编辑:或者不是每天调度,找出今天是什么,并适当地安排.例如 day=Saturday if [ $(date +%u) -eq 6 ] ; then day=Sunday ; fi at -f /path/to/me 5pm next $day 如果这个脚本在星期六运行,它会安排下个星期天的下一个运行,否则运行在下个星期六. [$(date%A)= Saturday]可能更可读,但是%A会给出特定于语言环境的字符串,如果您更改语言环境,则可能无法正常工作. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |