cron
指定したコマンドの定期実行を行う
そのマシンが起動していることが前提
手順
crontabコマンドで実行したいプログラムと実行日時を指定
すると同名のcrontab fileに設定が保存される
なにと同名 #??
crondがcrontab fileに書かれたスケジュールに従って、決まった日時に指定されたプログラムを実行する
logは/var/mail/内のuserごとに作成される
$ cat /var/mail/ユーザー名
確認
mailコマンドで確認するのかmrsekut.icon
同じこと。
日時の指定
分刻みで指定できる
毎時、毎日、毎週、毎月、再起動時(@reboot)など
該当する値の列挙
範囲の指定
e.g.
毎週月曜・水曜・金曜の午前0時
9時から17時の毎時0分と30分
よくあるミス
https://ja.wikipedia.org/wiki/Crontab#よくあるミス
罠だmrsekut.icon*2
環境変数に注意 ref
文字コードに注意 ref
cronはhome dirで実行される ref
usecases
Backup
Let's Encryptの更新
RSS Feed Readerの実装
関連
atコマンド
定期実行ではなく、特定の日時に一度だけ実行したい場合
#??
なんで名称っぽいのが複数あるの?
cronは機能
コマンドではないの?
「cronがcrontab, crondを内包している」と考えるのは間違ってる?
crontab
cron table
コマンド
crond
cron daemon
デーモン
cronとcrontabはコマンド
crondは違う
cronとcrontabはmanがある
一緒に使われるだけで別物ではあるのか