• 条件测试语句的格式如下:
  • [ 条件表达式 ]        # 条件表达式两侧各有一个空格
  • 按测试对象不同,条件测试语句共分为4中类型:
  • 文件测试语句
  • 逻辑测试语句
  • 整数值比较语句
  • 字符串比较语句
 
  • 文件测试语句所用到的参数及作用如下:
  • -d      测试文件是否为目录类型
  • -e      测试文件是否存在
  • -f       判断是否为一般文件
  • -r       测试当前用户是否有权限读取
  • -w      测试当前用户是否有权限写入
  • -x       测试当前用户是否有权限执行
 
  • 条件测试语句通常与echo $?结合使用,echo $?用来判断上一条语句是否执行成功,输出0则表示上一条语句执行成功,输出其他值则表示失败
 
  • 文件测试语句,简单示例如下:
  • 判断/etc是否为一个目录
  • 判断文件/etc是否存在
  • 判断/etc是否为一般文件
  • 判断当前用户对文件/etc/fstab是否有读取、写入、操作权限
  • 逻辑测试语句,是为了对测试结果进行逻辑分析,简化我们的测试流程,分为3中类型
  • &&   用于逻辑与        一般用法为,   [ 条件表达式 ] && echo "YES"          即,&&前面的语句执行成功了,才会去执行&&后面的语句,若&&前面的语句执行失败,则无任何输出
  • ||       用于逻辑或        一般用法为,   [ 条件表达式 ] || echo "NO"      即,||前面的语句执行失败,才会去执行||后面的语句,若||前面的语句执行成功,则无任何输出
  • !     用于逻辑非        !主要用于对条件表达式取反,然后结合&&或||来使用
  • &&与||连用,效果更好,      [ 条件表达式 ] && echo "YES"  || echo "NO"      即,若条件表达式的判断结果为真,则会输出YES,若条件表达式的判断结果为假,则输出NO
  • 逻辑测试语句,简单示例如下:
  • 整数值比较语句
  • 整数值比较语句会用到整数比较运算符,分列如下:
  • -eq      是否等于
  • -ne      是否不等于
  • -gt       是否大于
  • -lt        是否小于
  • -le       是否小于或等于
  • -ge      是否大于或等于
  • 简单示例如下:
  • 字符串比较语句
  • 字符串比较语句会用到字符串比较运算符,分列如下:
  • =      比较字符串内容是否相同
  • !=     比较字符串内容是否不同
  • -z     判断字符串是否为空
  • 简单示例如下:

第二十篇 Linux条件测试语句相关知识点介绍的更多相关文章

  1. 第二十一篇 Linux中的环境变量简单介绍

        环境变量之   PATH 定义解释器搜索用户执行命令的路径 获取PATH变量的值: echo $PATH /usr/local/bin:/usr/local/sbin:/usr/bin:/us ...

  2. Python开发【第二十篇】:缓存

    Python开发[第二十篇]:缓存redis&Memcache   点击这里 Python之路[第九篇]:Python操作 RabbitMQ.Redis.Memcache.SQLAlchemy ...

  3. “全栈2019”Java异常第二十二章:try-with-resources语句详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java异 ...

  4. SHELL 中条件语句的运用 if for 条件测试语句

    if条件测试语句可以让脚本根据实际情况自动执行相应的命令.从技术角度来讲,if语句分为单分支结构.双分支结构.多分支结构:其复杂度随着灵活度一起逐级上升. if条件语句的单分支结构由if.then.f ...

  5. 学习笔记:CentOS7学习之二十一: 条件测试语句和if流程控制语句的使用

    目录 学习笔记:CentOS7学习之二十一: 条件测试语句和if流程控制语句的使用 21.1 read命令键盘读取变量的值 21.1.1 read常用见用法及参数 21.2 流程控制语句if 21.2 ...

  6. shell条件测试语句实例-测试apache是否开启

    终于理解了shell条件测试语句"!="和"-n"的用法区别,于是有了如下的shell脚本,做为练习. 第一种方法:测试apache是否开启?字符串测试 #!/ ...

  7. Python之路【第二十篇】:待更新中.....

    Python之路[第二十篇]:待更新中.....

  8. [转帖]Linux教程(21)-Linux条件循环语句

    Linux教程(21)-Linux条件循环语句 2018-08-24 16:49:03 钱婷婷 阅读数 60更多 分类专栏: Linux教程与操作 Linux教程与使用   版权声明:本文为博主原创文 ...

  9. Egret入门学习日记 --- 第二十篇(书中 9.1~9.3 节 内容 组件篇)

    第二十篇(书中 9.1~9.3 节 内容 组件篇) 第八章中的内容. 以上都是基本的Js知识,我就不录入了. 直接来看 第9章. 开始 9.1节. 以上内容告诉你,Egret官方舍弃了GUI,使用了E ...

随机推荐

  1. java - CAS及CAS底层原理

    CAS是什么? CAS的全称为Compare-And-Swap它是一条CPU并发原语,也就是在CPU硬件层面上来说比较并且判断是否设置新值这段操作是原子性的,不会被其他线程所打断.在JAVA并发包ja ...

  2. XSS漏洞的poc与exp

    poc <script>alert('xss')</script>  最简单常用的poc <a href='' onclick=alert('xss')>type& ...

  3. Iptables防火墙(未完)

    来自深信服培训第二天下午课程 软防跟硬防 Linux包过滤防火墙概述 netfilter 位于Linux内核中的包过滤功能体系 称为Linux防火墙的"内核态" iptables ...

  4. Treats for the Cows POJ - 3186 dp 区间dp

    //dp[i][j]表示第i次从左边取,第j次从右边取的价值,所以我们可以得到状态方程 //dp[i][j]=max(dp[i-1][j]+(i+j)*a[i],dp[i][j-1]+(i+j)*a[ ...

  5. Android Q 使用通知栏消息

    String myChannelId = "iot"; String myChannelName = "告警通知服务"; NotificationManager ...

  6. Wannafly Camp 2020 Day 5A Alternative Accounts

    There are n different accounts on the website, and some of them competed in the recent k contests. H ...

  7. PP: Learning representations for time series clustering

    Problem: time series clustering TSC - unsupervised learning/ category information is not available. ...

  8. 使用饿了么el-date-picker里及如何将后台给的时间戳js转化为时间格式

    首先代码是这个样子的,使用v-model <el-date-picker v-model="formData.createTime" :disabled="true ...

  9. nodemon:无法将“nodemon”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。

    主要问题还是你的终端(也就是你的nodemon命令执行的地方没有这个环境) 解决方法:设置全局的nodemon,在终端执行 npm install -g nodemon

  10. js及jsp.java查错的几种方式

    一.js 1.console.log("你想输出的内容"); 2.alert("你想输出的内容"); 3.debugger;(记得打开F12) 4.快速找到js ...