2012-04-11 20 views
4

我使用:每當gem可以保存crontab文件中的現有行嗎?

  • 的Ruby 1.9.2
  • 每當0.7.2
  • Capistrano的2.9.0
  • Capistrano的-EXT 1.2.1

我使用的時候與Capistrano聯合部署以管理我的crontab文件。

我注意到它每次都完全重寫我的crontab文件。

我希望能夠在cron中設置環境變量來控制PATH和MAILTO設置,它們是常規的cron環境變量。

有沒有辦法讓每當不覆蓋整個crontab文件,以便我可以將自定義添加到我的crontab文件,並確保它們會持續?

回答

10

是的,你可以做到這一點。你只需要指定一個標識符添加到任務被寫入crontab中:只要你撥打上面的命令它會

# Begin Whenever generated tasks for: some_identifier_name 
0,5,10,15,20,25,30,35,40,45,50,55 * * * * /bin/bash -l -c 'cd /var/www/test/releases/20120416183153 && script/rails runner -e production '\''Model.some_method'\'' >> /tmp/cron_log.log 2>&1' 

# End Whenever generated tasks for: some_identifier_name 

然後:

whenever --update-crontab some_identifier_name 

它會產生這樣在crontab中的條目只更新它找到您指定的標識符的位置。

相關問題