crontabで初めて遊んだよ!
crontab というものをよく知りませんでした。
あら、まぁ。
なかなかやるじゃないww
やっぱMac買って良かったと思うこの頃。
cronとは
cronとは、決められた時刻にコマンドを定期的に実行させるためのデーモンプロセスです。 cronではコマンドだけにとどまらず、シェルスクリプトや、PerlやPHPなどのインタープリタ言語で書かれたプログラムも動作させることができます。 cronを実行させるためにはcrondが起動している必要があります。
crontabとは
crontab (クロンタブ、あるいはクローンタブ、クーロンタブとも)コマンドはUnix系OSにおいて、コマンドの定時実行のスケジュール管理を行うために用いられるコマンドである。 標準入力からコマンド列を読み取り、crontabと呼ばれるファイルにそれを記録する。
まずは叩いてみる
$ crontab -l
crontab: no crontab for mochiwaki
と返ってきたら
crontabは設定されていません。
編集してみる
$ crontab -e
編集モードになります。
これを打ってみる(i にしてから)
# test * * * * * echo "test" >> cron.txt
(:wq)
1分待ってみましょう!
(1分後)あら、不思議!
cron.txtというファイルに"test"って文字が書かれているわ!
もう1分待ってみましょう!
(+1分後)あら、不思議!
cron.txtというファイルに"test"って文字が増えているわ!
ちなみにさっきやった crontab -l を叩くと設定されているものが見れます。
説明します
" * "は起動する時間を表しています。
* | * | * | * | * | echo "test" | >> | cron.txt |
---|---|---|---|---|---|---|---|
分 | 時 | 日 | 月 | 曜日 | ”test”って書く | 追記 | このファイルに |
↑は毎分、毎時、毎日、実行されます。
" * "は"毎"と訳すとわかりやすいですねw
" * "または数値を書き込みます。
月 | 火 | 水 | 木 | 金 | 土 | 日 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7または0 |
毎日15:45に実行なら
45 15 * * *
" , "も使えます。
月曜と木曜日15:45と21:45に実行するなら
45 15,21 * * 1,4
何分おきに
10分ごとに実行
*/10 * * * *
4時間ごとに実行
00 0-23/4 * * *
何時からー何時まで
9時から18時まで0分になったら実行
00 9-18 * * *
時間設定のあとはshなど書いたらそれを呼び出せます。
ということは、、
00 8 * * 1 /home/User/休みますメール.sh
っての作ってくれたら、
毎週月曜日8時に休みますメールを勝手に送ってくれますよwww
やるじゃんくーろんたぶ\(^o^)/
削除する
$ crontab -r
↑全消しです。
eとr間違えたら大惨事です。
気をつけてください。
だからよくcronを書くエンジニアは-eと-rは設定変えたり、
使わないらしいですねw