if语句的Bash字符串比较
因为bash编程,我变得异常疯狂 我有以下资料:if语句的Bash字符串比较,bash,Bash,因为bash编程,我变得异常疯狂 我有以下资料: result="ERROR|0" # From a complex sed execution IFS='|' read -a array <<< "$result" if [ "${array[0]}" == "ERROR" ]; then echo "Error" fi 它应该返回一个字符串,不是吗?我之前写的字符串在代码的第一个版本中有两个小错误: $result=“ERROR…”(要分配,必须使用resu
result="ERROR|0" # From a complex sed execution
IFS='|' read -a array <<< "$result"
if [ "${array[0]}" == "ERROR" ]; then
echo "Error"
fi
它应该返回一个字符串,不是吗?我之前写的字符串在代码的第一个版本中有两个小错误:
(要分配,必须使用$result=“ERROR…”
)result=value
在代码的第一个版本中有两个小错误:
(要分配,必须使用$result=“ERROR…”
)result=value
为变量赋值时,不要使用
符号。 e、 g.使用 而不是$
然后在编写字符串时不要忘记终止引号:$result="foo"
IFS='|' read -a array <<< "$result
IFS='|'read-数组为变量赋值时,不要使用
符号。 e、 g.使用 而不是$
然后在编写字符串时不要忘记终止引号:$result="foo"
IFS='|' read -a array <<< "$result
IFS=“|”read-它为我提供的数组(现在您已经更正了脚本中的错误),您确定要使用
运行代码段吗?你有错误吗?bash
打印的是什么?问题是输出中没有可见的字符用于着色,而且为其获取regexp非常奇怪。您可能知道,如果不告诉我们,没有人可以知道额外的字符(您将“ERROR | 0”作为非工作输入)。即使现在,您也会给我们一些代码,这些代码会给我一个输出,几乎可以是任何东西。这对我来说都是有用的(现在您已经更正了脚本中的错误),您确定要使用echo${array[@]}
运行代码段吗?你有错误吗?bash
打印的是什么?问题是输出中没有可见的字符用于着色,而且为其获取regexp非常奇怪。您可能知道,如果不告诉我们,没有人可以知道额外的字符(您将“ERROR | 0”作为非工作输入)。即使现在,你给了我们一些代码,这些代码给了我一个输出,几乎可以是任何东西。我忘记了引号,在开始时不小心添加了$notation,因为我不得不调整脚本以使其清晰。尽管如此,它仍然不起作用。我忘记了引号,并在开始时意外地添加了$符号,因为我不得不修改我的脚本以使其清晰。尽管如此,它仍然不起作用echo${array[@]}
$result="foo"
IFS='|' read -a array <<< "$result