bash while循环:没有这样的文件或目录
我有一个简单的bash脚本:bash while循环:没有这样的文件或目录,bash,shell,while-loop,Bash,Shell,While Loop,我有一个简单的bash脚本: #!/bin/bash counter=0 while [ $counter < 100 ]; do echo $counter counter=$((counter+1)) done 在bash中,“小于”运算符是-lt,而不是。请看一看:我可以使用双括号进行算术计算吗?建议引用所有变量。另外,请注意语法((计数器++)也有效。@Kingamere不在while中。您可以使用[[]],尽管它使用相同的运算符进行数值比较。@fedorqui是对
#!/bin/bash
counter=0
while [ $counter < 100 ]; do
echo $counter
counter=$((counter+1))
done
在bash中,“小于”运算符是
-lt
,而不是。请看一看:我可以使用双括号进行算术计算吗?建议引用所有变量。另外,请注意语法((计数器++)
也有效。@Kingamere不在while中。您可以使用[[]],尽管它使用相同的运算符进行数值比较。@fedorqui是对的,你应该在使用变量时引用它们,所以而[“$counter”-lt 100]
,等等。在这种特定情况下,这没有什么区别,但是如果你将脚本更改为从命令行参数或用户输入开始$counter
,它会。而((counter<100));do
是完全有效的bash
code。就此而言,For((counter=0;counter)也是有效的
./test: line 4: 100: No such file or directory
#!/bin/bash
counter=0
while [ $counter -lt 100 ]; do
echo $counter
counter=$((counter+1))
done