如何在bash shell中的'test'命令中使用'AND'条件

Lea*_*ner 2 bash shell

我使用下面的命令来测试'AND'条件

[[  "$string1" =~ "not" -a ! "$string1" =~ "$chas" ]] && echo "Hello"
Run Code Online (Sandbox Code Playgroud)

但它抛出了语法错误

-bash:条件表达式中的
语法错误-bash:`-a'附近的语法错误

我没有得到这里的语法错误...

个别条件正在起作用,但在使用和条件(-a)时,它会抛出错误.

Tru*_*ueY 5

测试命令[[不同于[.在[[ -a file True if file exists..尝试&&AND bool运算符...但语法有点不同.=~表示正则表达式模式匹配和"env变量和正则表达式周围不需要的.

这对我有用:

[[  $string1 =~ not && ! $string1 =~ $chas ]] && echo "Hello" 
Run Code Online (Sandbox Code Playgroud)