在while回圈中使用/bin/sh和不使用/bin/bash腳本將變數值遞減/遞減1的正確語法是什么
我使用了以下但不起作用
a=15
((a=a-1)) // not working
((a--)) // not working
編輯 1
i=0
a=[]
b=15
while [ $a == [] ] && [ "$i" -le 15 ]
do
echo " Waiting ."
sleep 60s
((i=i 1))
b=`expr $b- 1`
a=`some command`
done
仍然出現以下錯誤
sh: was: 未知運算元 /bin/sh: exit: line 186: 非法數字: -1
uj5u.com熱心網友回復:
算術替換被拼寫$(( ))并擴展到結果。如果您只需要副作用(例如增量),請在空命令中使用它:
a=15
: $((--a))
echo $a
請注意,shell 算術只是整數。
uj5u.com熱心網友回復:
$ a=15
$ a=`expr $a - 1`
$ echo $a
14
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/400203.html
