當運行我的bash腳本的這一部分我得到一個錯誤擊錯誤:值太大,基地(錯誤標記爲 「09」)
腳本
value=0
for ((t=0; t <= 4; t++))
do
d1=${filedates[$t]}
d2=${filedates[$t+1]}
((diff_sec=d2-d1))
SEC=$diff_sec
compare=$((${SEC}/(60*60*24)))
value=$((value+compare))
done
輸出
jad.sh: line 28: ((: 10#2014-01-09: value too great for base (error token is "09")
jad.sh: line 30: /(60*60*24): syntax error: operand expected (error token is "/(60*60*24)")
d1和d2是這種形式的日期2014-01-09和2014-01-10
任何解決方案,請?
你不能只減去形式YYYY-MM-DD日期。你必須先將它們轉換爲普通數字,比如time_t時間戳(這會讓你幾秒鐘)。 –
看起來它會將你的09轉換爲八進制符號,所以很可能實際上是在計算'2014-1-9',但由於'09'不是有效的數字(前面的0表示使用八進制而不是十進制)這是抱怨。 – robbrit
什麼解決robbirt? – user3178889