count=0
while [ "$count" -lt $var1Length ]
do
count=$((count+1))
done
上面我需要非常奇怪地增加我的计数。我看过其他与此相关的帖子,但都一针见血。这太古怪了,我想我需要真正逐个解释器。这根本说不通。
还,
虽然[“$count”
bash 不能可靠地读取不带引号的 $count 吗?美元后面的期望是什么导致它误读了这个 $count?
答案1
另一种(更简单的)方法是使用巴什主义:
count=0
while ((count < var1Length)); do
((count++))
done
甚至
count=0
while ((count++ < var1Length)); do
# ...
done
((...))
是一个算术命令,如果表达式非零,则返回退出状态 0,如果表达式为零,则返回 1。如果需要副作用(赋值),也用作“let”的同义词。请参阅http://mywiki.wooledge.org/ArithmeticExpression