变量,增量及其输出

时间:2016-02-02 08:33:46

标签: linux bash

这是一个脚本:

VarTest01=1
VarTest02=$( printf '%s-%03d' text $VarTest01 )

while [ $VarTest01 -lt 5 ]; do
echo $VarTest02
(( VarTest01++ ))
done

这是它的输出:

text-001
text-001
text-001
text-001

我的问题是:为什么我不将“text-001”改为“text-004”?似乎$ VarTest01正在递增但未正确显示。我错过了什么?

1 个答案:

答案 0 :(得分:4)

VarTest01=1
VarTest02=$( printf '%s-%03d' text $VarTest01 )

while [ $VarTest01 -lt 5 ]; do
echo $VarTest02
(( VarTest01++ ))
done

你正在递增VarTest01但你只声明一次VarTest02的字符串,所以我觉得这样可行:

VarTest01=1


while [ $VarTest01 -lt 5 ]; do
VarTest02=$( printf '%s-%03d' text $VarTest01 )
echo $VarTest02
(( VarTest01++ ))
done