这是我的代码:
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
几次才能到达实际部分。
学习的过程中享受乐趣。