簡體   English   中英

為什么crontab不能使用ruby?

[英]Why crontab can't use ruby?

由於某種原因,我不能在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權限?

在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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM