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 傳遞給...