2012-02-07 29 views
0

我試圖運行rake是基於命令在軌道上紅寶石,在cron作業,所以我寫了一個bash腳本,並放置在bash腳本中的cron,但我無法做到。如何運行Rails的Ruby的rake命令

這是我想在服務器啓動後執行的命令。這是我寫這沒有被執行

#!/bin/sh 

export RAILS_ENV=production 
/usr/bin/ruby script/delayed_job start 

RAILS_ENV=production ruby script/delayed_job status 

我bash腳本,請幫助我解決這個問題

+0

當迪迪你把腳本?事後重新啓動crond嗎? – 2012-02-07 11:59:05

+2

你不需要那樣做。 cron守護程序會每讀入一次「tick」重新讀取文件。 – 2012-02-07 12:03:21

+0

我已經將腳本放在rails應用程序的根文件夾中,不知道我沒有重新啓動crond,在別以爲我需要重新啓動crond。 – 2012-02-07 12:10:45

回答

0

你是不是缺少一個cd /path/to/your/application命令?

export RAILS_ENV=production 
cd /path/to/your/application && /usr/bin/ruby script/delayed_job start 
+0

我已經將bash腳本放置在rails應用程序的根文件夾中。 – 2012-02-07 12:11:50

+0

在這種情況下,你的crontab讀取什麼?你能把它粘貼在這裏嗎? – Swanand 2012-02-07 12:14:27

+0

:這裏是crontab * * * * * bash /home/ec2-user/apps/st/rake_delayed_jobs.sh – 2012-02-07 12:17:36

相關問題