(UNIX) cronとは、使い方、書式など

unix-cron

 

linuxサーバの管理をしていると、cronを触る機会があると思うので、
概要、使い方、書式なんかをメモ。

 

cronとは

 

cronとは、UNIX系OSで動くデーモンの一つで、決めた時間や日付で定期的にプログラムを実行してくれるものだ。

cron-image

指示しなくても勝手にプログラムを起動してくれるので、
ログローテートとかバックアップとか、定期的にやってほしい作業に設定しておくと便利

 

cronとは
  • UNIX系のOSで動くデーモン(crond)の一つ
  • 決めた時間や日付で定期的にプログラムを実行してくれる

 

 

cronの書式

 

cronは「crontabファイル」に書き込んでいく。
crontabファイルはログインしているユーザごとにを作成できる

下記のコマンドで現在のユーザでのcronを作成(初回のみ)・編集できる。
結果的にviが呼び出されるみたい。

crontab -e

 

左から「分」「時」「日」「月」「曜日」「実行コマンド」で設定する。半角スペースで区切ろう。

* * * * * [実行コマンド]

 

cronの設定値

各項目の基本的な設定値は以下。全部数字で指定する。

項目
0-59
0-23
1-31
1-12
曜日 0=日、1=月、2=火、3=水、4=木、5=金、6=土、7=日

 

cronの便利な指定方法

ちょっと便利な指定の仕方は以下

方法 説明
リスト 10,20,30 コンマで区切った値に対して全て実行
範囲 1-3 ハイフンで繋げた範囲の値に対して全て実行
共存 1,3,6-9 上記「リスト」と「範囲」は共存させることができる
間隔 */10 スラッシュの後に指定した値毎で実行

 

 

cronのサンプル

 

基本

10分になったら動くcron

10 * * * * sh /var/www/test.sh

 

13時08分になったら動くcron

08 13 * * * sh /var/www/test.sh

 

20日の12時56分に動くcron

56 12 20 * * sh /var/www/test.sh

 

5月3日の24時00分に動くcron

00 24 3 5 * sh /var/www/test.sh

 

月曜日の13時00分に動くcron

00 13 * * 1 sh /var/www/test.sh

 

便利指定

 

10分と20分と30分に動くcron

10,20,30 * * * * sh /var/www/test.sh

 

15日から20日の間、13時00分に動くcron

00 13 15-20 * * sh /var/www/test.sh

 

5日、10日、15日から20日の間、13時00分に動くcron

00 13 5,10,15-20 * * sh /var/www/test.sh

 

1時間毎に動くcron

* */1 * * * sh /var/www/test.sh

 

 

crontabコマンド

 

cronの書き方序盤で登場したcrontabコマンド

これはcrontabファイルという、cronの設定を書くファイルを作成・編集するためのコマンドだ

crontab [- u user] {-l|-r|-e}

 

オプション
-e crontabを作成(初回)・編集する。通常は、viエディタが起動する
-l crontabファイルの内容を表示する
-r crontabファイルを削除する
-u user userで指定したユーザのcrontabファイルを操作の対象とする。rootユーザのみ使用可能

 

まとめ

 

cronとは、UNIX系OSで動くデーモンの一つで、決めた時間や日付で定期的にプログラムを実行してくれるもの

記事が気に入った方はシェアをお願いします!

コメントを残す

メールアドレスが公開されることはありません。