• 条件测试语句的格式如下:
  • [ 条件表达式 ]        # 条件表达式两侧各有一个空格
  • 按测试对象不同,条件测试语句共分为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. 跨域请求问题:CORS

    1.编写过滤器类:需要实现Filter接口,并重写三个方法: (1)先设置字符编码: request.setCharacterEncoding("utf-8"); response ...

  2. IOU 选框和真实框重叠部分占两个总框并集的比例

    IOU 选框和真实框重叠部分占两个总框并集的比例 IOU 召回率:表示在预测为的正类中,有多少正类被预测为正类 https://blog.csdn.net/qq_36653505/article/de ...

  3. UTF-8与GBK的区别

    中文解码提示UnicodeDecodeError,UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd6 in position 0: inv ...

  4. HDU 4544 湫湫系列故事——消灭兔子 (优先队列)

    湫湫减肥  越减越肥!    最近,减肥失败的湫湫为发泄心中郁闷,在玩一个消灭免子的游戏.  游戏规则很简单,用箭杀死免子即可.  箭是一种消耗品,已知有M种不同类型的箭可以选择,并且每种箭都会对兔子 ...

  5. docker部署mysql Navicat远程连接

    docker部署mysql Navicat远程连接 docker search mysql   查看mysql镜像(是去dockerHub网站搜素镜像,遇到问题可以去该网站查看官方文档,纯英文文档估计 ...

  6. Xmanager6

    Xmanager6企业版 6.0096 含产品秘钥: https://www.newasp.net/soft/467373.html

  7. Nginx实现前端访问后端本地接口

    Nginx配置两个地方就行: 先是配置好自己项目的服务,确保自己的项目能运行: location / { root /web/xiangmu/public; // 本地项目的路径 index inde ...

  8. 解决pjax重复绑定

    个人博客 地址:http://www.wenhaofan.com/article/20180929002529 1.所有js统一在pjax容器外引入 在pjax容器外引入的js只会被引入一次,所以不会 ...

  9. Ubuntu18.04 一条命令安装caffe问题

    由于caffe安装坑很多,而且caffe框架很久不更新了,微调对框架影响不大,所以对与ubuntu18.04在caffe官网提供了一条命令安装,避免很多踩坑痛苦. CPU的一条命令安装: sudo a ...

  10. mysql数据库测试脚本

    背景: 对mysql的底层代码进行了重构,需要回归测试mysql的基本功能 测试目标: 涵盖功能点如下 1.创建库,删除库,重命名库 2.创建表(需要涵盖所有基本的数据类型,主键,自增,默认值,不允许 ...