我想在 bash shell 腳本中知道一天中的哪一分鐘,目前我只能想通過以這種方式date將兩個命令與hour of day和minute of hourto一起傳遞來做到這bc一點:
mod=$(echo 60*$(date %H) $(date %M) | bc)
echo $mod
這有效,但非常笨重而且不是很優雅,有沒有更好的方法?我在 date 命令中沒有看到一天中的分鐘選項。
我正在使用 bash 版本
4.4.20(1)-release
uj5u.com熱心網友回復:
作為一種更有效的方法(使用 bash 4.4 或更高版本),盡管不一定是更短的方法:
printf -v dateMath '%( (10#%H*60) 10#%M )T' -1
mod=$(( dateMath ))
...作為一種效率較低的單行(但仍然比使用dateand快得多bc),您也可以將其寫為:
mod=$(( $(printf '%( (10#%H*60) 10#%M )T' -1) ))
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/327973.html
