【问题标题】:Why crontab can't use ruby?为什么crontab不能使用ruby?
【发布时间】:2018-06-27 11:35:45
【问题描述】:

由于某种原因,我不能在crontab 中使用ruby

在控制台中,如果我运行echo $(ruby -v),它将完美返回ruby的版本。

但是,我把下面的代码放在了crontab中

* * * * * echo $(ruby -v) >> 123.rb
* * * * * echo "123" >> 123.rb

然后我注意到,123.rb 只包含很多123

所以我检查了ruby的路径。

root@myserver:~# which ruby
/usr/share/rvm/rubies/ruby-2.3.3/bin/ruby

基本上,我是唯一可以访问此服务器的用户,因此我将所有应用程序安装为root。 我应该以及如何添加一些link 来启用root 的权限?

【问题讨论】:

    标签: ruby linux cron


    【解决方案1】:

    在 crontab 中,输入完整路径:

    * * * * * echo $(/usr/share/rvm/rubies/ruby-2.3.3/bin/ruby -v) >> 123.rb
    * * * * * echo "123" >> 123.rb
    

    应该可以。

    或者,添加$PATH变量:

    在控制台中:

    echo $PATH

    复制值,在crontab文件中添加:

    export $PATH="<copied pathes>:/usr/share/rvm/rubies/ruby-2.3.3/bin/"
    
    * * * * * echo $(ruby -v) >> 123.rb
    * * * * * echo "123" >> 123.rb
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-07-11
      • 1970-01-01
      • 1970-01-01
      • 2012-07-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多