Linuxコマンド【 crontab 】cronを設定する
当ページのリンクには広告が含まれています。
スポンサーリンク
crontabコマンドは、各ユーザーのcrontabファイルを編集・閲覧するコマンドです。
crontabコマンド
書式
crontab [オプション]
crontabファイルには、指定した日時や定時に実行するコマンドやスクリプトが記録されています。スケジュールされたコマンドやスクリプトは、cronデーモンと呼ばれるバックグラウンドで動いているプログラムによって実行されます。
オプション
-e | crontabファイルの編集を行います。環境変数EDITORで指定されているエディタが起動します。 |
-l | crontabファイルの内容を表示します。 |
-r | crontabファイルを削除します。コマンドを実行すると否応なし(削除しますか?といった対話はありません)にcrontabファイルが削除されるので実行には注意が必要です。 |
-u ユーザー | 指定したユーザーのcron設定を行います。rootのみが使用できるオプションです。 |
crontabの書式
crontabの書式は、以下のように「分」「時」「日」「月」「曜日」「コマンド」を半角スペースで区切って指定します。行頭に「#」が記載された行は、コメントになります。
# コメント 分 時 日 月 曜日 コマンドやスクリプト
分 | 1桁、あるいは2桁の数字(0〜59)。ワイルドカード(*)を指定すると毎分。 |
日 | 1桁、あるいは2桁の数字(0〜23)。ワイルドカード(*)を指定すると毎時。 |
月 | 1桁、あるいは2桁の数字(1〜12)。または、3文字のテキスト(jan、decなど)。ワイルドカード(*)を指定すると毎月。 |
曜日 | 1桁の数字(0〜7)、0と7は日曜日。または、3文字のテキスト(sun、monなど)。ワイルドカード(*)を指定すると毎日。 |
コマンドやスクリプト | 実行するコマンドやスクリプトを指定。 |
日時の指定には「リスト」「範囲」「共存」「間隔」といった指定方法も可能です。
リスト | 1,3,8 | 「月」を指定した場合、1月、3月、8月に実行します。 |
範囲 | 10-12 | 「時」を指定した場合、10時、11時、12時に実行します。 |
共存 | 3,5,50-52 | 「分」を指定した場合、3分、5分、50分、51分、52分に実行します。 |
間隔 | */5 | 「分」を指定した場合、5分間隔に実行します。 |
使用例
crontabを編集します(オプション -e)。
$ crontab -e
以下の例では「tarコマンド」で、毎週月曜日の朝5時に/home/user/ディレクトリをバックアップするように設定しています。
# バックアップ 0 5 * * 1 tar -zcf /var/backups/user.tgz /home/user/
設定したcrontabを確認してみましょう(オプション -l)。
$ crontab -l # バックアップ 0 5 * * 1 tar -zcf /var/backups/user.tgz /home/user/