Linuxコマンド辞典 crontabコマンド(プロセス管理)
定期的に実行するスケジュール管理をする「crontab」コマンドの概要と使い方を記載しています。
RHEL Fedora CentOS Vine Deblan Ubuntu Plamo
参考サイト:Man page of INSTALL
目次
概要・使用方法
書式
$ crontab [オプション]
一般ユーザが1時間ごと、1日ごとなどcrontab編集することで定期的にコマンドを実行します。crontabは「分時 日 月 曜日 コマンド」の形式で実行時間の実行コマンドを指定します。ユーザのcrontabファイルは、Debianでは/var/spol/cron/crontabs/ユーザー名、RedHat系では/var/spool/cron/ユーザー名に用意されています。コマンドを実行する際、HOMEやLOGNAME(ユーザー名)などの環境変数を利用できます。
crontabについて
オプション
-l | crontabの内容を表示する |
-r | crontabファイルのエントリーをすべて削除する |
-e | エディタを開いてcrontabを編集する |
-i | crontabファイルを削除するときに警告する |
-u ユーザー名 | ユーザーを指定してcrontabファイルを編集する(rootユーザーのみ) |
crontabファイルのフィールド
フィールド | 説明 |
---|---|
分 | 0~59までの整数 |
時 | 0~23までの整数 |
日 | 1~31までの整数 |
月 | 1~12までの整数、もしくはjan~decまでの文字列 |
曜日 | 0~7までの整数(0と7:日曜日から6:土曜日)もしくはSun、Monといった文字列 |
コマンド | 実行するコマンドのパス |
crontabを作成する
crontab -e
登録したスケジュールを表示します
crontab -l
実行結果
毎日23時15分に/usr/local/bin/backupコマンドを実行する
[sunarin@localhost ~]$ crontab -l
15 23 * * * /usr/local/bin/backup
[sunarin@localhost ~]$
5分ごとに/usr/local/bin/backupコマンドを実行する
[sunarin@localhost ~]$ crontab -l
*/5 * * * * /usr/local/bin/backup
[sunarin@localhost ~]$
登録したスケジュールをすべて削除します
crontab -r
実行結果
[sunarin@localhost ~]$ crontab -l
15 23 * * * /usr/local/bin/backup
[sunarin@localhost ~]$ crontab -r
[sunarin@localhost ~]$ crontab -l
no crontab for sunarin
[sunarin@localhost ~]$
他のユーザーの登録スケジュールをすべて削除します。
crontab -r -u test
実行結果
[sunarin@localhost ~]$ crontab -r -u test
管理者権限でユーザのcrontabを把握する
管理者権限で実行する必要がある。
crontab -u ユーザー名 -l
実行結果
[root@localhost ~]# crontab -u test -l
*/5 * * * * /usr/local/bin/backup
[root@localhost ~]#
管理者権限でユーザ権限のcrotabを削除する。各ユーザーは自分のcrontabを削除できる。
crontab -u ユーザー名 -r
実行結果
[root@localhost ~]# crontab -u test -l
*/5 * * * * /usr/local/bin/backup
[root@localhost ~]# crontab -u test -r
[root@localhost ~]# crontab -u test -l
no crontab for test
[root@localhost ~]#