定期的にFTPでアップロードする仕掛けを学ぶ
自習なんだけど。
cronディレクトリがあるのでフムフムとcrontabを眺める。よくよく考えるとcronを起動させる何かが分からないのでサービスを眺めるがそれっぽいのが無い。ググってみたらpycron、Z-Cronとか引っかかるが見当たらない。cron for Windowsにはタスクスケジューラーで何とかなるというので見たらあった。
#タスク
実行するファイル名「C:\cron\cronscript\panda.bat」(起動させるファイル名)
開始「C:\cron\cronscript」(開始って名前だけど、実際は作業フォルダ)
実行するアカウント「HATENA\Administrator」
スケジュール「開始時刻8:30から800分、間隔10分、間隔毎週月、火、水、木、金、土曜日」
panda.batを眺めるがwgetの作法がわからん
#C:\cron\cronscript\panda.bat
C:\Progra~1\GnuWin32\bin\wget.exe --no-proxy http://kenmituo.com/schedule/panda -O C:\cron\cronscript\panda.html
ruby D:\cron\cronscript\koara_ftp.rb
windows-で-gnu-tools-を使う。-gnuwin32を参考にしてwgetを入れる。インストール時間なげーなーww、30分以上掛かったかな?
1行目を意訳すると
wgetをproxyなしでhttp://〜からFILEとしてC:\〜に書き込む
--no-proxy プロクシを使わない -O, --output-document=FILE FILE に文書を書きこむ ||< rubyでFTPは[http://rubyist.g.hatena.ne.jp/teraco/20080910/1221052754:title=rubyでFTP(今日も元気にrubyist)]から >> require 'net/ftp' ftp = Net::FTP.new ftp.connect('[FTPサーバ名]') ftp.login('[ユーザー名]', '[パスワード]') ftp.binary = true ftp.chdir('[アップロード先のパス]') ftp.put('[アップロードするファイルのローカルパス+ファイル名]', '[アップロード先のファイル名]') ftp.quit << わかりやすい。 Ruby On Railsで作成したファイルを一時的に保存して定期的にアップロードしている。