linux計画タスクCrontab

2350 ワード

LinuxオペレーティングシステムタイミングタスクシステムCron入門(linux計画タスク)
cronはlinuxでのタイミング実行ツールであり、手動で介入することなくジョブを実行できます.CronはLinuxの内蔵サービスですが、自動的には起きないので、以下の方法でこのサービスを起動、閉じることができます.
/sbin/service crond startまたはservice cron start//サービス開始
/sbin/service crond stopまたはservice cron stop//サービスを閉じる
/sbin/service crond restartまたはservice cron restart//サービスの再起動
/sbin/service crond reloadまたはservice cron reload//再読み込み構成
このサービスをシステムが起動したときに自動的に起動することもできます.
/etc/rc.d/rc.localこのスクリプトの末尾には:
  /sbin/service crond start
現在、C ronというサービスはすでにプロセスの中にあります.私たちはこのサービスを使用することができます.Cronサービスは以下のいくつかのインタフェースを提供しています.
  1.直接crontabコマンドで編集
cronサービスはcrontabコマンドを提供してcronサービスを設定します.以下はこのコマンドのいくつかのパラメータと説明です.
crontab-u//あるユーザのcronサービスを設定し、一般的にrootユーザはこのコマンドを実行する際にこのパラメータを必要とする
crontab-l//ユーザーcronサービスの詳細をリスト
crontab-r//ユーザーのいないcronサービスの削除
crontab-e//ユーザーのcronサービスの編集
例えばrootは自分のcron設定を表示します:crontab-u root-l
例えばrootはfredのcron設定を削除したい:crontab-u fred-r
cronサービスを編集するとき、編集する内容にはいくつかのフォーマットと約束があります.入力:crontab-u root-e
vi編集モードに入ると、編集内容は必ず以下のフォーマットに合致しなければならない:*/1**ls>/tmp/ls.tx t
タスクスケジューリングcrond常駐コマンド
crontabのフォーマット:
第1列分1~59第2列時間1~23(0は子夜)第3列日1~31第4列月1~12第5列日0~6(0は日曜日)第6列実行するコマンド
次はcrontabのフォーマットです.時分割日月週に実行するコマンドです.
ここにcrontabファイルエントリの例を示します.
30 21**/usr/local/apache/bin/apachectl restart上の例は、毎晩21:30にapacheを再起動することを示しています.
45 4 1,10,22*/usr/local/apache/bin/apachectl restart上の例は、毎月1、10、22日の4:45にapacheを再起動することを示しています.
10 1*6,0/usr/local/apache/bin/apachectl restart上の例は、毎週6、日曜日の1:10にapacheを再起動することを示しています.
0,30 18-23**/usr/local/apache/bin/apachectl restartの上の例は、毎日18:00から23:00の間で30分おきにapacheを再起動することを示しています.
0 23**6/usr/local/apache/bin/apachectl restartの上の例は、毎週土曜日の11:00 pmでapacheを再起動することを示しています.
**/1**/usr/local/apache/bin/apachectl restart 1時間ごとにapacheを再起動
*23-7/1**/usr/local/apache/bin/apachectl restart夜11時から朝7時まで1時間おきにapacheを再起動
0 11 4*mon-wed/usr/local/apache/bin/apachectl restart毎月の4日と毎週1~水曜日の11時にapacheを再起動
0 4 1 jan*/usr/local/apache/bin/apachectl restart 1月1日の4時にapacheを再起動
crontabのタイミングタスクの出力はログファイルまたは/dev/nullにリダイレクトすることが望ましい
中国語文字の出力中に問題が発生する可能性があるため、正常な実行コマンドに問題がなく、crond実行は失効します.
pythonスクリプト書き込みファイルの例:
f.write(str(datetime.datetime.now()) + ':' + msg.encode('utf8') + '
')