Cron
為什麼 cron 使用與我的使用者不同的 Ruby 以及如何修復它?
我有一個 Ruby 腳本的 cron 作業。問題是
ruby
執行檔與預期不同。Ruby 是從原始碼安裝的,因此它應該是新的全域預設值。$ ssh root@example.com root@example.com$ ruby -v ruby 2.0.0p247 (2013-06-27 revision 41674) [x86_64-linux] root@example.com$ which ruby /usr/local/bin/ruby
我目前有我的腳本顯示目前使用者、ruby 路徑和 ruby 版本:
# whoami root # which ruby /usr/bin/ruby # ruby -v ruby 1.8.7 (2011-06-30 patchlevel 352) [x86_64-linux]
我該如何糾正這個問題?
**更新:**執行的第一個 Ruby 文件的頂部有這一行:
#!/usr/bin/env ruby
設置您的 $PATH 以便首先列出包含您想要的版本的目錄。
和/或
將腳本中的第一行更改為直接指向所需的 ruby 版本:
#!/usr/bin/ruby