cron
UNIX系のOSで動いているプログラムだよ
指示した時間に指定したプログラムを動かしてくれるよ
簡単に書くよ
cron(読:クロン、クーロン、クローン)とは
UNIX系のOS
(コンピュータの人格に相当するソフト)(Linuxとか)に入っているプログラムのひとつ
であり
事前に「いついつになったら、このプログラムを動かしてね」と指示を出しておくと、その時間になったときに指定しておいたプログラムを動かしてくれるやつ
です。
詳しく書くよ
UNIX系のOSに住んでいます。
事前に「いついつになったら、このプログラムを動かしてね」と指示をしておくと、その通りにやってくれるやつ
が「cron」です。
指示したことしかやりませんが、指示したことは律儀に頑張ってくれます。
cronさんに対して「いついつに、このプログラムを動かせ!」な指示をするときは「crontab」というコマンドを使います。
crontabコマンドの詳細は、用語「crontab」の説明を ご覧ください。
いつプログラムを動かすかの指示は、分、時、日、月、曜日を指定する形で指示します。
一番、単純なのは「1月1日の10時30分」のようなピンポイントの日時指定でしょう。
他にも「毎日」のような指定や「1時と3時」のような指定もできます。
組み合わせれば、かなり細かい指示ができます。
例えば、cronさんに以下のような指示を出していたとしましょう。
10 8,14,19 * * * /hoge/piyota.exe
この指示の
10 8,14,19 * * *
の部分でプログラムを動かす日時を指定しています。
左から順番に「分、時、日、月、曜日」の指定です。
例では「分」のところに「10」が指定されています。
「時」のところに「8」「14」「19」の3つが指定されています。
「日」「月」「曜日」のところの「*」は「全部」の指示です。
毎日、毎月、すべての曜日を意味します。
よって、指示は「毎日、毎月、すべての曜日の8時もしくは14時もしくは19時の10分」を意図しています。
この指示をされたcronさんは
1.8時10分
2.14時10分
3.19時10分
にプログラム(/hoge/piyota.exe)を動かしてくれます。
これが毎日繰り返されます。
今日も明日も明後日も
1.8時10分
2.14時10分
3.19時10分
にプログラムを動かしてくれるのです。
cronさんは律儀なやつです。
指示された条件を満たす日時になると登録されているプログラムを動かしてくれます。
何回でも、です。
条件を満たすたびに「はいはい、こいつを動かせばいいのね」と、やってくれます。
よって、cronさんには定期的に何回も動かしたいプログラムを登録するのが一般的です。
例えば、バックアップを取るプログラムや、溜まったゴミファイルを消すプログラムなどでしょうか。
人間様が手で動かすとうっかり忘れてしまうかもしれなくて、でも決まった時間に動いて欲しいようなプログラムです。
もちろん、1回しか動かさないプログラムを登録することもできますけどね。
1回しか動かさないのであれば、cronに登録する意味がありません。
普通に実行すれば、それで事足ります。
さて、そんな便利なcronさんですが、1つだけ弱点があります。
それは
お仕事をする時間にコンピュータの電源が入っていないとお仕事を放棄する
ことです。
例えば「10時に、お仕事をしてね~」と指示をしておいたとしましょう。
10時の時点でコンピュータの電源が入っていないと、cronさんは仕事をしません。
「ボク自身が動いてなかったんだから仕方ないよね」と、あっさり諦めます。
「次に電源が入ったときに頑張ろう!」なんていう殊勝な考えはしません。
常に「今」を生きるやつなのです。
とはいえ「いやいや、それじゃ困るよ。次に電源が入ったときに、その仕事をしろよ!」と思う場合もあるでしょう。
そんなときは「anacron」というcronさんの親戚を使ってください。
anacronさんなら、やり損ねた仕事を次に電源が入ったときにやってくれます。
一言でまとめるよ
まぁ「cron」って単語が出てきたら「指示した時間に指定したプログラムを動かしてくれるやつなんだな~」と お考えください。






