Linux-システム-計画タスク


呉宏東-記2018年07月11日-ブログhttps://segmentfault.com/u/wu...

Linux計画タスク


計画タスク


概要


CentOS 7での定期的な計画タスクはcronieソフトウェアによって提供され、cronieには標準的なUNIXデーモンcrondと関連ツールが含まれています.使い捨てのタスクはat/batchによって実行される.

コマンドcrontab


計画タスクの作成には、1、編集/etc/crontabファイル、追加計画の2つの方法があります.2、crontab-eコマンドを使用する.
フォーマット:minute hour day month week[username]cmd;
minute:1時間のどの分、範囲0~59;hour:一日のどの時間、範囲0~23;day:一ヶ月のどの日、範囲1~31;month:一年のどの月、範囲1~12;week:週のどの日、範囲0~7(0と7はいずれも日曜日を表す);username:指定したユーザーIDでコマンドを実行します.cmd:タスク実行コマンド;
最初の5つの時間フィールドの構文:空ではなく、ワイルドカード*を使用して任意の時間を表すことができます.1,2,3などのカンマ間隔で複数の値を指定できます.0-6などのマイナス記号間隔で期間を指定できます.ステップ長/nは、0~6/2、すなわち0,2,4,6のように表すことができる.
最初の5つの時間フィールドでよく使われる表示:[*]は毎分を表します.5分おき[30*]は毎日0:30を表します.[0,4,8-18,22*]は毎日4:00、22:00、8~18の各整点を表す.[10/6/6]は、毎日0時から6時間おきの10分を表す.[23-20-23/2*]は毎日偶数時間の23分を表す.[30 1,15]は毎月1日と15日の午前1:30を表す.[51]毎週の午前1時05分を表す.[021-5]は、毎週月曜日から金曜日の夜10時を表す.[30 4 1,15*5]は、毎月の1日と15日、および毎週金曜日の4:30(週と日はまたはの関係)を表す.
#       
crontab -l;
#       
crontab -e;
#       /home/wuhd       
* * * * * cd /home/wuhd && touch r-$RANDOM;
#       
crontab -r;

スクリプトを作成し、/shell/cronに保存します.
#!/bin/bash

newfile() {
time=`date +%Y%m%d%H%M%S`;
    cd /home/wuhd && touch "f-$time-$RANDOM";
}
newfile;

/etc/crontabファイルを編集し、計画タスクの内容を追加します.
#   /etc/crontab  
vi /etc/crontab;
#       ,            cron
* * * * * root /shell/cron;