Linux

bash +每10分鐘在bash中列印一行

  • June 11, 2012

我想通過每 10 分鐘回顯以下“仍在處理中再等 10 分鐘”來列印

請建議在 echo 命令之前需要添加什麼條件才能每 10 分鐘列印一次此行?

備註 - 計數器每週期增加一個(1 秒),我不想在這個腳本中添加額外的延遲(睡眠命令)!!!!!!

Until   [    ]
do
Counter=1

sleep 1

 let counter=$counter+1

 [ .... ] &&  echo " still in process wait another 10 min …."

done 

添加另一個計數器,如果達到 600,則呼叫 echo 並重置計數器。根據需要重複。

所以這樣的事情應該做:

let echocounter=$echocounter+1
if [ $echocounter == 600 ]; then echo "still in process wait 10 min ..."; $echocounter=0; fi

使用模運算符(bash 特定語法):

if [ $(($counter % 600)) -eq 0 ] ; then
 echo " still in process wait another 10 min .."
fi

或更便攜:

if [ `expr $counter % 600` -eq 0 ] ; then
 echo " still in process wait another 10 min .."
fi

引用自:https://serverfault.com/questions/397554