cronで指定したタイミングでプログラムを実行できる。

というわけで菅野さんきよさんのアドバイスを参考に、オンテナ2をcronで20分おきに更新する様にした。

■以下作業メモ

/home/sho/public_html/cron/ontenna2.sh を作成。

その中身

#!/bin/sh

cd /home/sho/public_html/ontenna2/

/usr/bin/perl rna.cgi

オンテナ2のURIが http://www.ok.sfc.keio.ac.jp/~sho/ontenna2/ なのでそこに移動してからrna.cgiを叩いてアンテナリロードするshell script

cronを設定する。

$ crontab -e

でviでcron編集画面になる。

参考:Dream-Sheed: cronの設定

viには移動モードと編集モードがあるが、わからなくなったらEsc連打してればなんとかなるらしい。

参考:viを使い倒そう

とりあえず i を押すと編集モードになる。

↓を書くと、20分おきにshell scriptが実行される。

*/20 * * * * /bin/sh /home/sho/public_html/cron/ontenna2.sh 2>/dev/null

Esc連打した後Shift+zを2回。viから抜けてshellに戻れる。

ちゃんと反映されてるか確かめる。

$ crontab -l

# DO NOT EDIT THIS FILE – edit the master and reinstall.

# (/tmp/crontab.10442 installed on Wed Jun 15 01:35:31 2005)

# (Cron version — $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)

*/20 * * * * /bin/sh /home/sho/public_html/cron/ontenna2.sh 2>/dev/null

完了。

cronの動作ログは /var/log/cron にある。