shell脚本中的“*”和“[[]]”符号是什么意思?

shell脚本中的“*”和“[[]]”符号是什么意思?

‍‍这是我的代码:

Number=12
ListOperation=('+'  '/'  '*'  '-')
if [[ " ${ListOperation[*]} " == *"/"* ]]; then
    let Result="$Number $operation $Number"
    echo $Result
fi

为什么“if”中使用了两次“[]”?为什么“/”字符串旁边使用“*”?

答案1

您可以将[[...]]视为一个控制字符序列,它向 bash 发出信号,以评估在它们之间找到的任何表达式作为条件表达式

同样,*也是一个特殊的控制字符,它告诉 bash “匹配任何内容”。随着您对编程越来越熟练,您将了解到它的正确名称是元字符,但这现在并不重要。

要了解 bash 条件表达式,您可以man bash在终端上键入,然后输入 跳到该部分/,然后在出现的提示符上键入 ,CONDITIONAL EXPRESSIONS然后输入Enter。您可能需要输入n几次才能到达实际部分。

学习的过程中享受乐趣。

相关内容