序文
指定された時間に、指定されたコマンドまたは指定されたプログラムスクリプトを実行します。多くの機能は手動で実行する必要はありません。たとえば、バックアップなどのタスクは通常早朝に実行されますが、現時点ではシステムタイミングタスクが使用されます。Windowsには、システムタイミングタスクを実装するタスクプランツールがあります。パーソナルコンピュータではあまり使用されず、ウイルス対策ソフトウェアがこれを使用する場合があります。
1. crondサービスの管理とアクセス制御
時間指定タスクを有効にするには、crondバックグラウンドサービスを開始する必要があります。cronは時間指定タスクのサービスです。これは、dがデモデーモンを意味し、httpd dもバックグラウンドデーモンです。このサービスは、システムでデフォルトで開始および自動開始されます。
起動コマンド: service crond restart
自己起動コマンド: chkconfig crond on
2.ユーザーのcrontab設定
コマンド: crontab [选项]
オプション:
-e
crontabタイミングタスクの編集、
-l
crontabタスクのクエリ
-r
、現在のユーザーのすべてのcrontabタスクの削除
コマンド: crontab -e
機能: crontab編集インターフェースに入ります。vimを開いて作業フォーマットを編集します
。 * * * * * 执行的任务
ヒント:現在のユーザーのすべてのcrontabタスクを削除するには、crontab -rを使用します。そのうちの1つだけを削除する場合は、crontab -eを使用して1回削除するだけで十分です。
2.1形式で表される意味
事業 | 意味 | 範囲 |
---|---|---|
最初 * | 時間の最初の分 | 0〜59 |
二番目* | 1日の最初の数時間 | 0〜23 |
第3* | 月の日 | 1-31 |
第4* | 年の月 | 1〜12 |
五番目* | 曜日 | 0-7(0と7は両方とも日曜日を表します) |
2.2形式の特別な意味
特別なシンボル | 意味 |
---|---|
* | いつでも表します。たとえば、最初の*は1時間ごとに毎分実行されることを意味します |
、 | 不連続な時間を表します。たとえば、「0,8,12 * * *コマンド」 |
- | 連続する時間範囲を表します。たとえば、「0 5 * * 1-6コマンド」は、コマンドが月曜日から土曜日の午前5時に実行されることを意味します。 |
* / n | 実行頻度を表します。たとえば、「* / 10 * * * * command」は、10分ごとにコマンドを実行することを意味します |
2.3栗を少し与える
時間 | 意味 |
---|---|
45 22 * * *コマンド | 毎日22:45に注文を実行する |
0 17 * * 1コマンド | コマンドは毎週17:00に実行されます |
0 5 1,15 * *コマンド | 注文は毎月1日と15日の午前5時に実行されます。 |
40 4 * * 1-5コマンド | 注文は毎週月曜日から金曜日の午前4時40分に実行されます。 |
* / 10 4 * * *コマンド | 毎日午前4時に、10分ごとにコマンドを実行します |
0 0 1,15 * 1コマンド | コマンドは、毎月1日と15日に実行され、毎週1日の0:00に実行されます。注:曜日と曜日は、すべて日を定義するため、同時に表示しないことが最善です。管理者を混乱させるのは非常に簡単です。 |
栗をもう少しあげます。
コマンド: */5 * * * * /bin/echo 11 >> /tmp/test
機能:このコマンドを5分ごとに実行する/ bin / echo 11 >> / tmp / test
コマンド: 5 5 * * 2 /sbin/shutdown -r now
機能:毎週午前5時にシャットダウン
コマンド: 0 5 1,10,15 * * /root/sh/autobak.sh
機能:毎月1日、10日、15日の午前5時にこのプログラムを実行します。
実験を開始:
- (1)このコマンドを60分ごとに実行しますecho 11 >> / tmp / test
- (2)スクリプトautobak.shを記述し、12:55にスクリプトを実行します。
注:日付の代わりに、%の前にエスケープ文字が追加されます。これはシェルプログラミングでは追加されません。理由:システムタイミングタスクのcrontab -eの%は、追加されない場合、特別な意味があります。エスケープ文字を使用すると、時間スクリプトを実行できません。したがって、これに注意を払う必要があります。
リコール:date -s 04:59:30
時間を調整するコマンド
総括する
(1)現在のユーザーのすべてのcrontabタスクを削除するには、crontab -rを使用します。そのうちの1つだけを削除する場合は、crontab -eを使用して1回削除するだけで十分です。
(2)この最小単位は分です。12:52:50〜12:53:00秒の場合は、分単位の流れを見るためだけに実行されます
(3)重要なのは、crondサービスを開始し(デフォルトでアクティブになっています)、次にcrond -eを使用して、フォーマットに従って入力と書き込みを行うことです。サーバーで使用される一般的なメンテナンス方法。