Bashtesting中的复合条件组

我想在Bash if语句中有一些条件。 具体来说,我正在寻找如下内容:

if <myCondition1 and myCondition2> or <myCondition3 and myCondition4> then... 

我如何将这些条件按照我描述的方式与Bash中的一个if语句一起使用? 我感谢你对此有任何想法。

One Solution collect form web for “Bashtesting中的复合条件组”

使用&&(和)和|| (或)运营商:

 if [[ expression ]] && [[ expression ]] || [[ expression ]] ; then 

它们也可以在单个[[]]中使用:

 if [[ expression && expression || expression ]] ; then 

最后,您可以将他们分组以确保评估顺序:

 if [[ expression && ( expression || expression ) ]] ; then 
  • 如何检查一个string是否包含Python中列表中的一个元素
  • if条件中的多个条件
  • “if a或b或c但不是全部”的Python语法
  • 如果语句匹配多个值
  • 紧凑的方式来写如果(..)语句与许多平等
  • 比较Bash中的两个string时出现“找不到命令”错误
  • 为什么在“if x then return”之后很less使用“else”?
  • 在PHP中进行types杂耍和(严格)大于/小于比较
  • 如果语句与string比较失败
  • Golang是否具有“如果x in”构造与Python类似?
  • Java If语句的缩写