
我正在嘗試採用所描述的方法這裡。
我的計劃表:
# m h dom mon dow command
@reboot /home/qe2user/.rvm/environments/ruby-1.9.3-p125 /home/qe2user/Ruby/test/prog.rb > /home/qe2user/Ruby/test/crondebug.log 2>&1
我的紅寶石程式:
doit = true
while doit
File.open('/home/qe2user/Ruby/test/test.txt','a') {|f| f.write(Time.now.to_s + "\n")}
doit = false
end
crondebug.log 中的輸出:
/bin/sh: /home/qe2user/.rvm/environments/ruby-1.9.3-p125: Permission denied
我發出“chmod u+x prog.rb”,然後再次重新啟動,但得到了相同的結果。
當我從命令列運行 prog.rb 時,它確實會寫入該檔案。
任何幫助將不勝感激。
答案1
您正在執行的文件是/home/qe2user/.rvm/environments/ruby-1.9.3-p125
,而不是/home/qe2user/Ruby/test/prog.rb
.
因此,您必須使第一個可執行:
chmod u+x /home/qe2user/.rvm/environments/ruby-1.9.3-p125
當然,這是假設它ruby-1.9.3-p125
由 crontab 用戶擁有。