虽然shell脚本中的循环计算次数太多

时间:2015-09-28 15:13:23

标签: shell ubuntu

我正在运行一个简单的shell脚本来在Ubuntu中执行tcl文件。我之前已经为我的脚本使用了FOR Loops,但这次更适合使用while循环。但是,我的while循环运行的迭代次数多于我指定的次数,即代码为:

a=1

while [ $a -lt 5 ]

do   
    ns loopTest.tcl >> outputTest.txt
    a=$(( a+1 ))

done

我正在运行5次迭代(这只是一个测试,我实际上需要它运行100次)但我得到输出12次。我已经改变了迭代次数,但我仍然比迭代更多。我真的很困惑为什么会这样。

我非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

正如@chepner所指出的那样,你的循环运行了4次,而不是5次。这是因为你从a = 1开始,只有当a小于5时才循环,即通过值1,2,3,4。

由于您看到输出被打印12次,看起来循环内的tcl代码实际上每次调用时都会输出3次。