其實雖說是Cron in Ruby,但卻都用在Rails上lol
Github
Railscasts - Cron in Ruby
以下內容擷取自Railscasts
先在config/environment.rb中加入這段
複製內容到剪貼板
代碼:
# config/environment.rb
config.gem 'javan-whenever', :lib => false, :source => 'http://gems.github.com'
然後下
複製內容到剪貼板
代碼:
# 這表示Windows與此無緣
sudo rake gems:install
之後,在你的Project根目錄中下此指令
複製內容到剪貼板
代碼:
wheneverize .
然後會在config/底下產生一個schedule.rb,編輯它
複製內容到剪貼板
代碼:
every 2.hours do
rake "thinking_sphinx:index"
end
every :reboot do
rake "thinking_sphinx:start"
end
every :saturday, :at => "4:38am" do
command "rm -rf #{RAILS_ROOT}/tmp/cache"
runner "Cart.remove_abandoned"
end
# config/deploy.rb
after "deploy:symlink", "deploy:update_crontab"
namespace :deploy do
desc "Update the crontab file"
task :update_crontab, :roles => :db do
run "cd #{release_path} && whenever --update-crontab #{application}"
end
end
然後儲存離開,跳出來後下
複製內容到剪貼板
代碼:
whenever --update-crontab
接著再下
複製內容到剪貼板
代碼:
crontab -l
看有沒有出現
基本上,用every設定時間必須大於等於60秒,也就是1分鐘,用小於1分鐘就會出問題
rake -T
http://en.wikipedia.org/wiki/Rake_(software)
task :addproduct => :environment (for ActiveRecord)
排程:
linux cron table
分 時 日 月 年 星期 command
*/5 * * * * *
http://rubydoc.info/gems/whenever/0.6.2/frames
/var/log
whenever --update-crontab -s environment=development
crontab -l
2010年11月18日 星期四
2010年11月16日 星期二
2010年11月4日 星期四
2010年11月3日 星期三
Ubuntu 設定固定 IP 和 Proxy
vi /etc/network/interfaces
一、單網卡單 IP
auto eth0 ## 重要,這一行一定要設定
iface eth0 inet static
address [IP] ## 請將 [IP] 換成你要的 IP
netmask 255.255.255.0
gateway 192.168.1.1
# sudo /etc/init.d/networking restart
# export http_proxy=http://帳號:密碼@代理伺服器:port
一、單網卡單 IP
auto eth0 ## 重要,這一行一定要設定
iface eth0 inet static
address [IP] ## 請將 [IP] 換成你要的 IP
netmask 255.255.255.0
gateway 192.168.1.1
# sudo /etc/init.d/networking restart
# export http_proxy=http://帳號:密碼@代理伺服器:port
訂閱:
文章 (Atom)