Linux: if

作者: LET149 | 来源:发表于2023-10-01 08:57 被阅读0次

在shell中应用 && 和 || 就能完成大量的判断,如果需要更复杂的判断,可以使用 if 进行

shell 中的 if 判断语句有三种格式,分别是单分支if语句、双分支if语句和多分支if语句

1. 单分支if语句
  • 单分支if语句表示只有一个判断条件,如果满足则执行,如果不满足则不执行
  • if语句后面的条件测试语句不一定非要是test或[]测试语句,任何有返回值的命令都可以写在if语句后面,命令返回值为0代表执行成功(即为真),返回值非0代表执行失败(即为假)
if 判断条件  #进行判断
then 执行语句  #满足判断条件时,执行此语句,否则执行
fi  #表示判断语句终结
(base) [zhiyong@malab Learn]$ x=5 

(base) [zhiyong@malab Learn]$ if [ $x -gt 1 ]  #进行条件判断
> then echo "Yes"  #条加满足时执行此语句
> fi  #结束条件判断
Yes  #输出值

(base) [zhiyong@malab Learn]$ if [ $x -gt 1 ]; then echo "Yes"; fi  #以上语句也可以写成这种形式
Yes  #输出结果相同
2. 双分支if语句
  • 所谓双分支if语句,就是有两个分支的if语句,往往是包含一个else
if 判断条件
then 执行语句一
else 执行语句二
fi
(base) [zhiyong@malab Learn]$ if [ $x -gt 9 ]  #进行条件判断
> then echo "good"  #如果满足条件则执行语句一
> else echo "bad"  #如果不满足条件则执行语句二
> fi  #结束判断语句
bad  #输出结果
3. 多分支if语句
  • 指有三个或三个以上分支的if判断语句
if 判断语句一
then 执行语句一
elif 判断语句二
then 执行语句二
else 执行语句三
fi
(base) [zhiyong@malab Learn]$ if [ $x -lt 3 ]
> then echo "good_1"
> elif [ $x -eq 4 ]
> then echo "good_2"
> else echo "good_3"
> fi
good_3

相关文章

网友评论

      本文标题:Linux: if

      本文链接:https://www.haomeiwen.com/subject/nutpgktx.html