当前位置: 首页 > 面试题库 >

bash中的if语句错误

陆宇航
2023-03-14
问题内容

i=0
for f in awk '{print $1}' config.list
do
echo “i value is $i”
if [“$i” = “0”]
then
echo “here”
i=$((i+1))
continue
fi
arr[i]=$f
i=$((i+1))
done

在上面的bash脚本中,我在使用if语句时出现了一个错误,它看起来像这样

./script.sh: line 5: [0: command not found

请指出我的错误。


问题答案:

采用 if [ "$i" = "0" ]

在bash,你需要周围的空间[,并]if条件



 类似资料:
  • 我试图检查一个进程(假设它被称为some_进程)是否正在服务器上运行。如果是,则回显1,否则回显0。 这是我正在使用的命令,但它只能部分工作(更多信息见下文)。注意,我需要在一行中编写脚本。 注:某些过程中的是为了防止grep自身返回。 如果某个_进程正在运行,则会回显“1”,这很好。但是,如果某个_进程未运行,则不会产生任何回声。

  • 我在这里做错了什么? 尝试匹配任何包含空格、小写、大写或数字的字符串。特殊字符也很好,但我认为这需要转义某些字符。 这显然只测试上限、下限、数字和空格。但不管用。 *更新*

  • 我似乎搞不清楚下面的语句与和有关的问题是什么。请记住,仍然在开发中,我只是还没有能够在语句中测试它,所以很可能是错误的。 我得到的错误是: 而语句是这样的。

  • 本文向大家介绍bash脚本中if语句的使用方法,包括了bash脚本中if语句的使用方法的使用技巧和注意事项,需要的朋友参考一下 除了 "if,else" 形式之外,还有其它形式的 "if" 语句: 只有当 condition 为真时,该语句才执行操作,否则不执行操作,并继续执行 "fi" 之后的任何行。 以上 "elif" 形式将连续测试每个条件,并执行符合第一个 真 条件的操作。如果没有条件为真

  • 目前遇到此语法错误,错误发布在代码下方。 上面的代码,无法找出if语句上的语法错误。错误消息将很快粘贴为注释

  • 我们可以像这样使用if-field: 但是这里有一些问题,我不明白为什么。 > 如果我运行(count已定义),则会引发错误: 我们能不能先分配一个值? 当我运行count=1 if False else l.append(count 1)(注意:count=0,l=[])时,将引发一个错误: l的结果是。 使用相同的条件,如果使用if-else块,则不会出现错误。 你能解释一下区别吗?