Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我遇到了代码所在的shell脚本
for line in $LIST_ARRAY;do if [[ $LIST_ARRAY =~ $line ]] then echo "true" .... ... .
=~在这种情况下有什么用?
=~
它是允许在 if 语句中使用正则表达式的 Equal Tilde 运算符。
额外的二元运算符 =~ 可用,其优先级与 == 和 != 相同。使用时,运算符右侧的字符串被视为扩展正则表达式并进行相应匹配(如在 regex(3) 中)。如果字符串与模式匹配,则返回值为 0,否则为 1。如果正则表达式在语法上不正确,则条件表达式的返回值为 2。如果启用了 shell 选项 nocasematch,则不考虑字母字符的大小写进行匹配。可以引用模式的任何部分以强制将其作为字符串匹配。
http://linux.die.net/man/1/bash