Linux Tips

プログラムを定期的に実行するには

北浦訓行
2001/4/19

 バックアッププログラムのように、定期的にプログラムを実行する場合は、cronを使用する。一定の時間後にプログラムを実行するにはで紹介したatコマンドは、プログラムを実行するのが一度だけという点が、cronとは異なる。

 cronを使用するには、crondというデーモンが起動していなければならない。ntsysvコマンド(Red Hat系)やturboserviceコマンド(Turbolinux)で確認しておく。cronの設定は、crontabコマンドで行う。以下のコマンドを実行すると、viが起動して、cronの設定ファイルが開かれる。

$ crontab -e

 cronの設定ファイルは、

* * * * * コマンド名

という書式になる。最初の5つの「*」は、それぞれ分、時、日、月、曜日を表す。また、「*」は値を設定していないことを表す。値は「,」で区切って複数指定することもできる。曜日は、0が日曜日で6が土曜日になる。

 例えば、毎月1日と15日の午前5時30分に/usr/local/bin/mycommandコマンドを実行するには、

30 5 1,15 * * /usr/local/bin/mycommand

とする。

 保存してviを終了させれば、cronの設定は終了だ。設定した内容を確認するには、-lオプションでcrontabコマンドを実行する。

$ crontab -l
# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (/tmp/crontab.959 installed on Mon Apr 9 07:37:35 2001)
# (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)
30 5 1,15 * * /usr/local/bin/mycommand

 一度設定したcronを訂正するときも、-eオプションを付けてcrontabコマンドを実行する。また、複数の設定を行うときは、2行目以降に続けて設定を行えばいい。

 cronの削除は、以下のコマンドを実行する。

$ crontab -r
$ crontab -l
no crontab for nori

 なお、指定したコマンドが実行結果を表示するタイプだった場合は、atコマンドと同様に、メールでその内容がcronを指定したユーザーあてに送られる。

Linux Tips Index



 Linux Squareフォーラム Linux Tipsカテゴリ別インデックス
インストール/RPM ブート/ブートローダ
ファイル操作 環境設定
ユーザー管理 コンソール/ターミナル
X Window System セキュリティ
トラブルシューティング 他OS関係
ネットワーク ハードウェア
Webサーバ Samba
GNOME KDE
OpenOffice.org エミュレータ
ソフトウェア そのほか/FAQ
全Tips公開順インデックス Linux Tips月間ランキング
Linux Squareフォーラム全記事インデックス

MONOist組み込み開発フォーラムの中から、Linux関連記事を紹介します


Linux & OSS フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Linux & OSS 記事ランキング

本日 月間