【问题标题】:Rake command not working in cron but works when running as commandRake 命令在 cron 中不起作用,但在作为命令运行时起作用
【发布时间】:2014-04-01 08:06:20
【问题描述】:

我已将以下内容放在 crontab 中(每分钟执行一次)

* * * * * cd /home/foo/Projects/redmine-2-4-2-prod && /home/foo/.rvm/gems/ruby-2.0.0-p0/bin/rake RAILS_ENV=production --silent redmine:email:receive_imap host=imap.gmail.com port=993 ssl=1 username=foo@gmail.com password='foopass' project=testredmine tracker=Support status=New priority=High allow_override=project,status,tracker,priority

我看到 cron 在日志 (/var/log/syslog) 中每分钟都在运行。在 shell 中执行上述命令时,我会收到电子邮件。但是在 cron 中执行相同的命令时收不到电子邮件。

请帮助我知道,我错过了什么。

【问题讨论】:

    标签: ruby cron rake


    【解决方案1】:

    尝试将这样的内容添加到您的 cron 任务中:

    source /home/user/.rvm/environments/ruby-1.9.3
    

    您可以通过以下方式获取 rvm 文件的路径:

    rvm env --path
    

    【讨论】:

    • 嗨,Demas,感谢您的回复,我尝试了您的建议,但仍然面临同样的问题。
    • 好吧,添加 '&> ~/log' 到您的命令中,以将命令输出记录到文件并显示给我们。
    最近更新 更多