Shell 在上午8点到晚上8点之间每隔15分钟设置一次cron作业
我需要设置一个cron作业,在上午8点到晚上8点之间每15分钟运行一次。 谷歌搜索之后,我决定这样使用它:Shell 在上午8点到晚上8点之间每隔15分钟设置一次cron作业,shell,cron,Shell,Cron,我需要设置一个cron作业,在上午8点到晚上8点之间每15分钟运行一次。 谷歌搜索之后,我决定这样使用它: */15 8-20 * * * /path/of/shellscript.sh 但是,不会触发cron。 正确的表达应该是什么 编辑: */15 8-19 * * * /path/of/shellscript.sh 00 20 * * * /path/of/shellscript.sh cron执行。但是,日志显示此错误: Mailed 62 bytes of output but g
*/15 8-20 * * * /path/of/shellscript.sh
但是,不会触发cron。
正确的表达应该是什么
编辑:
*/15 8-19 * * * /path/of/shellscript.sh
00 20 * * * /path/of/shellscript.sh
cron执行。但是,日志显示此错误:
Mailed 62 bytes of output but got status 0*0047
但是,如果我手动运行脚本,它执行得很好 通过设置sh文件和jar文件的权限来解决
chmod 0777 shellscript.sh
chmod 0664 jarfile.jar
从08:00到20:45每15分钟运行一次,这并不是你说的你想要的。你怎么知道它没有执行?
shellscript.sh
是否依赖于环境变量?如果将/shellscript.sh的/path/of替换为,date>$HOME/cronlog
,会怎么样?shell脚本运行一个jar文件来下载excel工作表并将其存储在某个位置。我在该位置找不到下载的excel。如果我手动执行脚本,我可以在正确的位置下载excel。不,它不依赖于环境变量请记住,手动运行脚本时的环境变量与cron的环境变量不同。您可以像这样在cron中设置变量:。此外,您的cron条目应该类似于0,15,30,45 8-20***/path/of/shellscript.sh
对于最常见的cron实现(Vixie cron),*/15
相当于0,15,30,45
。将权限设置为777
意味着系统上的任何人都可以编写脚本。如果你是唯一的用户,这可能无关紧要,但过度放纵仍然是一个坏习惯755
更好,如果您需要组写入访问权限(您可能不需要),则使用775
。(顺便说一句,chmod
命令采用八进制;不需要前导的0
。)