、Linuxのcrontabコマンド
Linuxのcrontabは、定期的にコマンドを実行するために使用するプログラムです。
インストールが完了し、オペレーティングシステムである場合には、デフォルトでは、このタスクのスケジューリングコマンドを開始します。
チョンは、ジョブを実行し、自動的に実行すべき作業がある場合には、定期的に毎分実行される作業のためのコマンドをチェックしcrond。
作業Linuxのタスクのスケジューリングは、次のカテゴリに分かれています。
- 図1は、システムによって実行される作業:システムは、定期的にキャッシュをクリアし、このようなデータバックアップシステムとして、実行することに努め
- 2は、人によって実行される作業:ユーザーの作業は、自分自身を設定するために、各ユーザがメールサーバは新しい手紙、仕事を持っているかどうかを確認するために10分ごとのように、定期的に行われます
文法
crontab [ -u user ] file
または
crontab [ -u user ] { -l | -r | -e }
説明:
crontabの一定時間で、または執行手続きで定期的にユーザーを可能にするために使用される、換言すれば、ユーザのタイムスケジュールと同様です。
-uユーザーは、前提はあなたが他の人の時間表を指定することができます(例えばルート)、その許可を得なければならないということである、ユーザーが設定した時間テーブルを参照指定します。 あなたは-uユーザーを使用しない場合は、その後、自分のタイムスケジュールを設定するために発現されています。
パラメータ説明:
- -e:タイムテーブルを設定するには、テキスト・エディタを実行し、デフォルトのテキストエディタを使用すると、別のテキストエディタを使用したい場合(たとえば、テキストエディタを指定するには、VISUAL環境変数を設定してください、VIですsetenv VISUALジョー)
- -r:現在の時刻表を削除
- -l:現在の時刻表を表示します
タイムテーブルには、次の形式になっています。
f1 f2 f3 f4 f5 program
- f1が微小で、時間をF2、F3は、最初の数日で、月を表し、F4は月を表し、F5は曜日を表します。 プログラムは、プログラムが実行されることを示しています。
- F1 *として発現された場合* F2毎分プログラムは、時間ごとに実行されるプログラムを示しているときに実行しなければならない、と類推によって残り
- 類推による最初のB分に最初の分からの表現を実行するには、この時間、f2はB時間から時のAB表現を実行する必要があり、残りf1はABです
- Nは、一度*ためにF2を各微小時間間隔を表し/ N N f1がある場合、各1時間の時間間隔を表し、* / N、類推によって残り
- A、B、CのためにF2、実行するために、B、C、...、A、B、Cを表す...分を表し... F1は、B、Cである場合、...時実行するための時間、残り類推
また、ユーザーは、タイムスケジュールを設定するには、crontabファイルの方法を使用する前に、ファイル内のすべての設定を保存することができます。
例
最初の毎月の時間0分の日/ binに/ lsコマンドを実行します
0 7 * * * /bin/ls
12ヶ月以内に、毎日午前6時〜12時、および20分毎には、/ usr / binに/バックアップを実行します
0 6-12/3 * 12 * /usr/bin/backup
金曜日午後5時まで月曜日毎日[email protected]に手紙を送ります
0 17 * * 1-5 mail -s "hi" [email protected] < /tmp/maildata
月間毎日深夜0時20分、午前2時20分、4時20 .... "笑"エコー実行
20 0-23/2 * * * echo "haha"
次に、いくつかの具体的な例を考えてみます。
0 */2 * * * /sbin/service httpd restart 意思是每两个小时重启一次apache 50 7 * * * /sbin/service sshd start 意思是每天7:50开启ssh服务 50 22 * * * /sbin/service sshd stop 意思是每天22:50关闭ssh服务 0 0 1,15 * * fsck /home 每月1号和15号检查/home 磁盘 1 * * * * /home/bruce/backup 每小时的第一分执行 /home/bruce/backup这个文件 00 03 * * 1-5 find /home "*.xxx" -mtime +4 -exec rm {} \; 每周一至周五3点钟,在目录/home中,查找文件名为*.xxx的文件,并删除4天前的文件。 30 6 */10 * * ls 意思是每月的1、11、21、31日是的6:30执行一次ls命令
注:プログラム指定された時間を実行すると、システムはこのような手紙を受け取りたくない場合は、各行の後にスペースを残しプラス>ください、プログラムの実行の内容を表示するためにあなたに手紙を送ります/ dev / null 2>&1へ