首页 > 系统服务 > 详细

Shell脚本之条件语句

时间:2021-07-15 09:55:07      阅读:32      评论:0      收藏:0      [点我收藏+]

一,条件测试

二、if语句的结构

 三、case语句结构

一,条件测试

1、条件测试操作

Shell环境根据命令执行后的返回转态($?)来判断是否执行成功,当返回值为0(真true)时表示成功,返回值为非0值(假false)时表示失败或异常。

test命令,可以对特定条件进行测试,并根据返回值来判断条件是否成立($?返回值为0表示条件成立)。

格式一: test 条件表达式

格式二:[ 条件表达式 ]  #方括号"["或"]"与条件表达式之间需要至少一个空格进行分离

2、文件测试

格式:[ 操作符  文件或目录 ]

常用的操作符

-e:测试目录或文件是否存在(Exist)

-d:测试是否为目录 (Directory)

-f:测试是否为文件 (File)

-r:测试当前用户是否有权限读取 (Read)

-w:测试当前用户是否有权限写入 (Write)

-x:测试是否设置有可执行 (Excute)权限

-L:测试是否为符号链接

技术分享图片

 

 3、整数制比较

格式: [  整数变量1  操作符  整数变量2  ]

常用的操作符

-eq:等于

-ne:不等于

-gt:大于

-lt:小于

-le:小于等于

-ge:大于等于

 技术分享图片

 4、字符串比较

格式1: [  字符串1  =  字符串2  ]

              [  字符串1 !=  字符串2  ]

格式2: [  -z  字符串  ]

常用的操作符

=:字符串内容相同

!=:字符串内容不同,!表示相反的意思

-z:字符串内容为空

-n:检查是否有字符串存在

5、逻辑测试

格式1:[  表达式1  ] 操作符  [  表达式2  ]....

格式2:命令1  操作符  命令2

常用的测试操作符

-a或&&:逻辑与,“而且”的意思

-o或||   :逻辑或,“或者”的意思

    !    :逻辑否

二、if语句的结构

1、单分支结构

if  条件测试操作

   then  命令序列

fi

技术分享图片

 技术分享图片

 2、双分支结构

if  条件测试操作

   then  命令序列1

   else  命令序列2

fi

技术分享图片

 使用双分支结构来判断 80端口httpd是否在运行

技术分享图片

 

 技术分享图片

 3、多分支结构

if  条件测试操作

   then  命令序列1

elif 条件测试操作2

   then 命令序列 2

   else  命令序列3

fi

技术分享图片

 例:使用多分支结构创作脚本文件使85~100分之间判为优秀,70-84之间判为合格,其余为不合格

技术分享图片

 

 技术分享图片

 

 三、case语句结构

case多分支结构

case 变量值 in

模式1)

   命令序列1

;;

模式2)

   命令序列2

;;

.......

*)

   默认命令序列

esac

 

技术分享图片

 同样那上一个例子举例

 技术分享图片

 

 技术分享图片

 

 

 

Shell脚本之条件语句

原文:https://www.cnblogs.com/JC123/p/15013478.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!