http://ja.wikipedia.org/wiki/Crontab http://miya0.dyndns.org/pc/settei/crontab.html http://www.express.nec.co.jp/linux/distributions/knowledge/system/crond.html https://qiita.com/aki-takano/items/3a3c5fca3c185173eda1 !cronの設定ファイル cronの設定ファイルは、以下の表の通りです。crond は、毎分、以下の設定ファイルの内容に変更がないかを確認し、変更があった場合には、それを反映して実行します。 ,ファイル/ディレクトリ名,利用者,主な用途 ,/var/spool/cron/user,全ユーザ,ユーザの自動タスク設定ファイル ,/etc/crontab,root,毎時、毎日、毎月、毎週の自動タスクのメイン設定ファイル ,/etc/cron.hourly,root,毎時実行される自動タスク設定ファイルを置くディレクトリ ,/etc/cron.daily,root,毎日実行される自動タスク設定ファイルを置くディレクトリ ,/etc/cron.monthly,root,毎月実行される自動タスク設定ファイルを置くディレクトリ ,/etc/cron.weekly,root,毎週実行される自動タスク設定ファイルを置くディレクトリ ,/etc/cron.d,root,上記以外の自動タスク設定ファイルを置くディレクトリ !crontabコマンドの書式 crontabファイルは、cron を操作する際に作成し、プロセスを定期的に実行するためのファイルで、crontabコマンドで作成します。書式は、以下の通りです。 # crontab [- u user] {-l|-r|-e} なお、指定可能なオプションについては、下の表を参照して下さい。 ,オプション, ,-e ,crontabを対話的に編集します。通常は、viエディタが起動して、設定ファイルの編集を行ないます。 ,-l ,crontabファイルの内容を表示します。 ,-r ,crontabファイルを削除します。 ,-u user ,userで指定したユーザのcrontabファイルを操作の対象とします。なお、このオプションは、rootユーザのみ使用できます。 !書き方 # (行頭の # マークはコメント行を示す) # +------------ 分 (0 - 59) # | +---------- 時 (0 - 23) # | | +-------- 日 (1 - 31) # | | | +------ 月 (1 - 12) # | | | | +---- 曜日 (0 - 6) (日曜日=0) # | | | | | # * * * * * 実行されるコマンド 例1 毎日3時にシェル実行 00 03 * * * /mnt/sdb/backup/backup.sh 例2 43 23 * * * 23:43に実行 12 05 * * *    05:12に実行 0 17 * * * 17:00に実行 0 17 * * 1 毎週月曜の 17:00に実行 0,10 17 * * 0,2,3 毎週日,火,水曜の 17:00と 17:10に実行 0-10 17 1 * * 毎月 1日の 17:00から17:10まで 1分毎に実行 0 0 1,15 * 1 毎月 1日と 15日と 月曜日の 0:00に実行 42 4 1 * *     毎月 1日の 4:42分に実行 0 21 * * 1-6   月曜日から土曜まで 21:00に実行 0,10,20,30,40,50 * * * * 10分おきに実行 */10 * * * *        10分おきに実行 * 1 * * *         1:00から 1:59まで 1分おきに実行 0 1 * * *         1:00に実行 0 */1 * * *        毎時 0分に 1時間おきに実行 0 * * * *         毎時 0分に 1時間おきに実行 2 8-20/3 * * *      8:02,11:02,14:02,17:02,20:02に実行 30 5 1,15 * *       1日と 15日の 5:30に実行 !!!@を使った時刻指定 例 @reboot /path/to/script ,記述,意味 ,@reboot, "Run once, at startup." ,@yearly, "Run once a year, '0 0 1 1 *'." ,@annually, (same as @yearly) ,@monthly, "Run once a month, '0 0 1 * *'." ,@weekly, "Run once a week, '0 0 * * 0'." ,@daily, "Run once a day, '0 0 * * *'." ,@midnight, (same as @daily) ,@hourly, "Run once an hour, '0 * * * *'." !!!GUIで設定する gnome-schedule をインストールすることで、GUIで設定できる。 !!!cronで届くメールを止める cron で実行された標準出力やエラーはcronファイルの所有者に メールで届く。これを止めるには2つの方法がる。 !方法1 標準出力、標準エラーを /dev/null へ送る hoge.sh >/dev/null 2>&1 !方法2 設定ファイルで、メールの宛先を空にする MAILTO="" 0 17 * * * hoge.sh !!!文字が化ける cron で実行すると LANG環境変数が設定されずにログファイル等が化けることがある。 cron から実行されるシェル等の冒頭で export LANG=ja_JP.UTF-8 で文字コードを設定しておくと良い。 {{category2 OS,Linux}}