首页 > 系统相关 >shell脚本之条件语句(条件测试,if,case)

shell脚本之条件语句(条件测试,if,case)

时间:2022-10-23 18:57:08浏览次数:47  
标签:case shell 变量 整数 命令 操作符 测试 条件 表达式

条件测试

文件测试test命令

测试表达式是否成立,成立返回0,非0为不成立

一:test  [选项] 条件表达式

二:[  选项  条件表达式 ]

 

 

 

常用选项

 
-d 测试文件是否为目录
-f 测试文件是否为普通文件
-e 测试目录或文件是否存在(建议用-e  -a不准确)
-r 测试当前用户是否有读取权限
-w 测试当前用户是否有写入权限
-x 测试当前用户是否有执行权限
-L

测试是否为符号链接

 

整数测试

整数值比较

一:[ 整数变量1 操作符 整数变量2 ] ​

二:test 整数变量1 操作符 整数变量2

操作符:

 

-eq 等于
-ne 不等于
-gt 大于
-lt 小于
-le 小于或等于    
-ge 大于或等于

 

整数测试

整数值比较

一:[ 整数变量1 操作符 整数变量2 ] ​

二:test 整数变量1 操作符 整数变量2

操作符:

 

 

使用-z或-n测试变量时,变量需要加引号,避免有歧义而导致判断结果有误

逻辑测试

逻辑测试用于连接多个测试条件,并返回整个表达式的值。 逻辑测试主要有"逻辑与","逻辑或","逻辑否"三种

一:[ 表达式1 ] 操作符 [ 表达式2 ]

二:命令1 操作符 命令2

操作符:

-a或&&   逻辑与,而且

-o或||   逻辑或,或者

[表达式1] && [表达式2] 等同于 [表达式1 -a 表达式2] 等同于 [[表达式1 && 表达式2]]

三元运算符

[ 条件表达式 ] && 值1 || 值2

 || 运算符的前面表达执行成功后将不会再运行后面的表达式

 

 

if语句

单分支结构

 

 

 

语法:

if [ 条件测试表达式 ]     #如果 [ 为真 ]

then     #那么

命令       #执行该命令

fi         #退出

 

 

 

 

 

 

 

双分支结构

语法:

if [ 条件测试表达式 ]   #如果 [ 为真 ] 

 then #那么 命令1    #执行该命令 

 else    否则 

 命令2   #执行命令2 

 fi    #退出

 

 

 

 

 

 

 

多分支结构

if [ 条件测试表达式 ]      #如果 [ 为真 ] 

 then      #那么 

 命令1      #执行该命令 

 elif     #又如果 

 命令2     #执行命令2 

 elif       #又如果 

 命令3     #执行命令3 

fi     #退出

 

 

case语句的结构

语法:

case 变量引用 in 

模式1) 

       命令分支1 

        ;; 

 模式2) 

         命令分支2 

         ;; 

 ... *) 

         默认命令分支 

 esac

注意:

case支持glob风格的通配符: 

 * :任意长度任意字符 

 ? :任意单个字符 

 [0-9] :指定范围内的任意单个字符 

 | :“或者”的意思,如: a|b

 

 

 

 


 

标签:case,shell,变量,整数,命令,操作符,测试,条件,表达式
From: https://www.cnblogs.com/fengxia6/p/16809639.html

相关文章

  • 应用上容器云的准入条件和最佳实践
    随着Kubernetes的发展,现在有一个新的技术趋势:在容器云中以Pod的方式运行虚拟机,这样容器云平台就能够提供普通容器无法实现的功能。相信通过类似的技术,越来越多的应用会向容......
  • android调用shell
    工具类importandroid.util.Log;importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStream;importjava.io.InputStreamReader;pub......
  • shell脚本基础
    作用与应用场景 用途自动化常用命令执行系统管理和故障排除创建简单的应用程序处理文本或文件应用场景重复性操作交互性任务批量事务处理服务运行状态监控......
  • shell脚本之条件语句
    一、test命令1、格式测试表达式是否成立,若成功返回0,否则返回其他数值 格式1:test条件表达式格式2:[条件表达式]二、文件测试1、格式 操作符、......
  • 重构 - 10 简化条件逻辑
    10简化条件逻辑目录10简化条件逻辑分解条件表达式合并条件表达式使用逻辑或合并条件表达式使用逻辑与合并条件表达式以卫语句取代嵌套条件表达式范例1范例2将条件反转......
  • 使用Shell脚本进行条件测试
    使用Shell脚本进行条件测试......
  • shell基础
    https://mp.weixin.qq.com/s?__biz=MzI2OTA3NTk3Ng==&mid=2649284689&idx=1&sn=6942854dcbefde0f5f2fe563bbfb8888&chksm=f2f99336c58e1a2053fa294af14efd41a4a7c64d219ca0......
  • Shell细说sort排序
    sort是在Linux里非常常用的一个命令,管排序sort将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出。使用方法:so......
  • shell sleep 睡眠命令
    shellsleep睡眠文章目录​​shellsleep睡眠​​​​1.背景​​​​2.简介​​​​3.语法​​​​4.实例​​​​4.1设置警报​​​​4.2终端中的延迟命令​​​​......
  • shell脚本之条件语句
    一、test命令1、格式测试表达式是否成立,若成功返回0,否则返回其他数值格式1:test条件表达式格式2:[条件表达式]二、文件测试1、格式操作符、文件名或者......