crontabの設定方法

2013/08/26

cron概要

cronとは、スクリプトを自動で実行するためのデーモンです。

通常サーバーの運用では、データの集計、ログのローテート、バックアップなどを行う必要があります。
これらの処理は、時間や負荷がかかりやすいため、アクセスの少ない深夜などに自動で実行します。
こういった自動で処理を実行するために使用するサービスです。

cronを設定するためには、crontabコマンドを使用する方法と、設定ファイルを直接変更する方法の2パターンあります。
今回は、crontabコマンドの使用方法を紹介します。

オプションの使い方

書式


crontab [ -u ユーザ名 ] { -l | -r | -e }

-u オプション
設定するユーザーを選択します。指定しない場合は現在のユーザーで設定されます。

-l オプション
設定されている内容を表示します。

-r オプション
設定されている内容を削除します。間違って削除してしまった事例が多いので十分注意して使ってください。

-e オプション
指定されているエディタを使用してcrontabの編集を行います。

設定方法

書式

設定する項目は、「分」「時」「日」「月」「曜日」の順で指定します。

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

各項目で設定できる数値は以下となります。

[分] 0-59
[時] 0-23
[日] 1-31
[月] 1-12
[曜日] 0-7(1が月、2が火、3が水・・・となります。)

指定方法

[リスト]  0,10,20,30   分フィールドの場合は、0,10,20,30分に実行します。
[範囲]   1-3       日フィールドの場合は、1,2,3日に実行します。
[共存]   1,3,5-7     時フィールドの場合は、1時、3時、5時、6時、7時に実行します。
[間隔]   */10      分フィールドの場合は、10分間隔で実行します。

分を指定する設定例

毎時10分に実行します。


10 * * * * [実行するコマンド]

0分と30分に実行します。


0,30 * * * * [実行するコマンド]

10分に1回実行します。


*/10 * * * * [実行するコマンド]

時を指定する設定例

毎日AM9時30分に実行します。


30 9 * * * [実行するコマンド]

毎日AM9時とAM11時に実行します。


0 9,11 * * * [実行するコマンド]

3時間に1回実行します。


0 */3 * * * [実行するコマンド]

日を指定する設定例

毎月1日のAM9時30分に実行します。


30 9 1 * * [実行するコマンド]

毎月3日と6日のAM9時に実行します。


0 9 3,6 * * [実行するコマンド]

3日に1回実行します。


0 0 */3 * * [実行するコマンド]

月を指定する設定例

毎年1月1日のAM9時30分に実行します。


30 9 1 1 * [実行するコマンド]

毎年2月と3月の1日のAM9時に実行します。


0 9 1 2,3 * [実行するコマンド]

3ヶ月に1回実行します。


0 0 1 */3 * [実行するコマンド]

曜日を指定する設定例

月曜のAM9時30分に実行します。


30 9 * * 1 [実行するコマンド]

火と金曜のAM9時に実行します。


0 9 * * 2,5 [実行するコマンド]
Related

Vagrant+Docker+PHP環境で「session.save_path」指定時に、セッションファイルが空になるエラー

ファイル共有でのフォルダの所有者を設定 結論 PHP5.4.28 からセッションファイルのownerはrootもしくはWebサーバのユーザに限るという制限が...

LINEと連携したテイクアウト事前注文システム徹底比較!

目次 テイクアウト予約・注文受付システムのトレンド LINEと連携したテイクアウト事前注文システムの価格表 L.B.B.Cloud テイクイーツ ...

PHPで動画の撮影日を取得

PHPで動画の撮影日を取得 概要 PHPからffprobeコマンドを実行し、動画の撮影日時を取得します。 コード $posted_at = ...

FullCalendarでGoogleカレンダーのようなUIを実装

jQueryプラグインFullCalendarのサンプル 概要 FullCalendarを使用して、GoogleカレンダーのようなUIを実装する使用例を...

PHP Laravel5.2でmulti-auth(複数テーブルでの認証)を実装

Laravel5.2でマルチ認証 概要 LaravelとはPHPの中で今最も伸びているフレームワークです。 処理速度が遅いなどありますが、かなり使い安く拡...

PHP 正規表現でIPアドレス形式の文字列か判定

正規表現でIPアドレスの入力チェック 概要 フォームで入力されたIPアドレスが正当な文字列か判定するためのバリデーション処理を実装します。 基本的...
トップへ戻る