bash while循环:没有这样的文件或目录

时间:2015-11-22 18:05:25

标签: bash shell while-loop

我有一个简单的bash脚本:

#!/bin/bash

counter=0
while [ $counter < 100 ]; do
   echo $counter
   counter=$((counter+1))
done

然而,当我尝试执行此操作时,我收到此错误:

./test: line 4: 100: No such file or directory

2 个答案:

答案 0 :(得分:7)

在bash中,<重定向标准输入,因此您要告诉bash从名为100的文件中读取,该文件不存在。而是使用-lt来比较数字。

#!/bin/bash

counter=0
while [ $counter -lt 100 ]; do
   echo $counter
   counter=$((counter+1))
done

你想做什么。

答案 1 :(得分:1)

&#34;小于&#34;运算符为-lt,而不是<

<会将文件内容重定向到左侧的命令。这就是您遇到此错误的原因:文件100不存在。

相关问题