为什么我的Cron工作无法正常执行?

时间:2018-10-05 19:57:58

标签: bash macos unix

我有一个写成这样的shell脚本:

#!/bin/bash
cd Documents/Hi_tech_team_10/
chmod +x /Users/twoodwa/Documents/Hi_tech_team_10/test.rb
ruby test.rb

当我在终端中执行它时,它可以正常工作,但是当我通过执行将其设置为cron作业时,

crontab -e

然后使用

编辑和保存文件
*/10 * * * * /Users/twoodwa/Documents/Hi_tech_team_10/test.sh

该脚本要么不执行,要么正在执行其他操作,而不是像在终端上那样运行它。

问题是什么?

编辑:我已经将脚本更改为使用绝对路径,但仍然无法正常工作:

#!/bin/bash
chmod +x /Users/twoodwa/Documents/Hi_tech_team_10/test.rb
ruby /Users/twoodwa/Documents/Hi_tech_team_10/test.rb

2 个答案:

答案 0 :(得分:1)

第一个检查点:脚本是否可执行

第二个检查点:您应该使用绝对路径

第三检查点:永不信任环境。 Cron有自己的环境(正确,在注释中建议)

好主意:在终端/文件中添加一些日志记录以检查执行情况以及执行失败的时间。

答案 1 :(得分:-3)

问题出在crontab中,将crontab更改为指向test.rb