linux下定時任務的簡單示例

疾風泣影發表於2020-12-02

1.方式一:用sleep實現定時任務:

1.1 編輯shell指令碼,如下sleep_aa.sh:

#!/bin/bash

t1=`date "+%Y-%m-%d %H:%M:%S"`

#t2=`date "+%Y-%m-%d %H:%M:%S"`
t2="2020-11-28 04:00:00"

echo t2=$t2

while true
do

if [[ $t1 > $t2 ]]; then
	echo "__begin:"
	
	nohup sh /opt/aa.sh  2>&1  &
	
	break;
	
else

	sleep 3
	
	t1=`date "+%Y-%m-%d %H:%M:%S"`
	
	echo t1=$t1
	
fi

done

aa.sh例子:

  

#!/bin/bash

echo "START"
#nohup /opt/bb.sh >/opt/bb.txt &

 

1.2 執行方式:

給執行許可權:

chmod +x sleep_aa.sh

chmod +x aa.sh

後臺執行:

nohup sleep_aa.sh  &

 

2. 方式二,crontab定時任務

crontab -e --->新增、編輯:

例子:59 23 * * * /opt/aa.sh >/dev/null 2>&1  &

解釋:每天23:59後臺執行下/opt/aa.sh

具體意義:

  空格分隔為6個列:

  第一列 分鐘: 1——59,或者*,例子:*/30,沒2分鐘

  第二列 小時: 1——23,或者*(0表示子夜)

  第三列 日 : 1——31,或者*

  第四列 月 : 1——12,或者*

  第五列 星期: 星期0——6(0表示星期天,1表示星期一、以此類推),或者*

  第六列 要執行的命令

crontab -l  --->顯示:

 

crontab -r --->刪除:

具體略。

 

相關文章