[英]Incrementing user time variable Bash
在我正在使用的腳本中,用戶定義了一個標記為開始時間的變量。 我想將該變量增加和減少±3小時。 格式為00:00:00(24hr),我不確定是否有更好的方法不涉及字符串操作,因為如果它小於零,則無法將-03:00:00傳遞給Python利用此變量的腳本。
#somescript.sh 00:01:35
STARTTIME=$1
E=${STARTTIME%*:}
S=${STARTTIME##*:} && ((S=S+3)
echo "$S : $E"
預期的結果:03:01:35和21:01:35
審閱:在問這個問題之前,bash / shell腳本中的 字符串運算符和遞增時間(分鍾和秒) 。 任何援助將不勝感激。
starttime=$1
endtime=$(date -u -d "$starttime 3 hours" +'%H:%M:%S')
echo "${starttime} - $endtime"
...用作:
$ ./add-time 01:01:35
01:01:35 - 04:01:35
如果您需要朝相反的方向前進,請添加單詞“ ago”:
endtime=$(date -u -d "$starttime 3 hours ago" +'%H:%M:%S')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.