shell指令碼命令支援任務每天定時重啟

2021-10-09 11:45:45 字數 828 閱讀 3160

while true

do#先停止上次程序(***:應用標識)

pid=`ps

-ef|grep ***|grep -v grep|awk ''`

if[-n "$pid"

] then

kill

-9 $pid

fi #指令碼啟動當前時間

nowtime=$(date "+%y-%m-%d %h:%m:%s"

)echo

#下次重啟時間(明天凌晨05點30分)

restarttime="$(date -d tomorrow "+%y-%m-%d") 05:30:00"

echo

#轉為時間戳

nowtime_stamp=$(date --date="$nowtime"

+%s)

restarttime_stamp=$(date --date="$restarttime"

+%s)

#啟動應用

#獲取將要休眠的時間(秒)

sleeptime=$(

(restarttime_stamp - nowtime_stamp)

)#如果sleeptime小於或等於0if[

$sleeptime

-le 0 ]

then

break

fi echo

"休眠:$s"

#開始等待,直至明天凌晨05點30分,開始下一次迴圈

sleep

"$s"

done

shell指令碼 命令

命令連線符 表示不管前面是否執行成功都要執行 表示前面執行成功才執行後面 表示前面執行失敗才執行後面 read命令 read 選項 值 read p 提示語句 n 字元個數 t 時間秒 s 不顯示 運算子 expr 3 2 結果賦值 sum expr 3 2 或者 sum 3 2 乘法expr 3 ...

shell指令碼命令

1.建立檔案 home test test.log rootdir home test testfile rootdir test.log touch testfile 2.如果檔案存在則刪除檔案 if f testfile then rm rf testfile fi3.如果檔案不存在則建立檔案 ...

shell 指令碼命令學習

set u 指令碼中有不存在變數,丟擲異常 set x 用來在執行結果之前,先輸出執行的哪一行命令 set e 只要發生錯誤就終止執行 set euxo pipefail 放在所有shell指令碼的開頭 echo vars 傳遞給指令碼或函式的所有引數 echo vars count num 傳遞給...