只是关于在 bash 中进行后增量的正确方法的一个小问题。
while true; do
VAR=$((CONT++))
echo "CONT: $CONT"
sleep 1
done
在这种情况下,VAR 从 1 开始。
CONT: 1
CONT: 2
CONT: 3
但如果我这样做:
while true; do
echo "CONT: $((CONT++))"
sleep 1
done
它从 0 开始。
CONT: 0
CONT: 1
CONT: 2
似乎第一种情况表现良好,因为 ((CONT++)) 将评估 CONT (undefined,¿0?) 并添加 +1。
如何获得类似 inecho
语句的行为以分配给变量?
编辑:在我的第一个示例中,我应该回显 VAR,而不是回显 CONT,这样它就可以正常工作,所以从一开始就是我的错误。