• 条件测试语句的格式如下:
  • [ 条件表达式 ]        # 条件表达式两侧各有一个空格
  • 按测试对象不同,条件测试语句共分为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. python开发第四篇:函数(1)

    函数 阅读目录 一 函数知识体系 二 函数基础 三 函数对象.函数嵌套.名称空间与作用域.装饰器 四 迭代器.生成器.面向过程编程 五 三元表达式.列表推导式.生成器表达式.递归.匿名函数.内置函数 ...

  2. vjudge 骨牌覆盖

    原题链接:https://vjudge.net/contest/331993#problem/B 在2*N的一个长方形方格中,用一个1*2的骨牌排满方格. 问有多少种不同的排列方法. 例如:2 * 3 ...

  3. update(十)

    Vue 的 _update 是实例的一个私有方法,它被调用的时机有 2 个,一个是首次渲染,一个是数据更新的时候:由于我们这一章节只分析首次渲染部分,数据更新部分会在之后分析响应式原理的时候涉及._u ...

  4. python3练习100题——034

    题目:练习函数调用. 这个很容易了. def hello_world(): return "hello, world!" def fun(): print(hello_world( ...

  5. python多项式拟合:np.polyfit 和 np.polyld

    python数据拟合主要可采用numpy库,库的安装可直接用pip install numpy等. 1. 原始数据:假如要拟合的数据yyy来自sin函数,np.sin import numpy as ...

  6. 831. KMP字符串(模板)

    给定一个模式串S,以及一个模板串P,所有字符串中只包含大小写英文字母以及阿拉伯数字. 模板串P在模式串S中多次作为子串出现. 求出模板串P在模式串S中所有出现的位置的起始下标. 输入格式 第一行输入整 ...

  7. mysql 对数据的自增ID重新进行排序

    创建表格时添加: create table table1(id int auto_increment primary key,...) 创建表格后添加: 删除原有主键: ALTER TABLE `ta ...

  8. batchsize用法 平均准确度和平均损失,以及实现前向运算的矩阵乘法方式,loss怎么反向传播的

    batchsize用法 平均准确度和平均损失,以及实现前向运算的矩阵乘法方式,loss怎么反向传播的 待办 使用batchsize可以把矩阵缩小,采用矩阵乘法的形式可以一次计算多个经过神经网络的结果, ...

  9. 【网页浏览】关键字搜索PIXIV插图

    可以在线搜索Pixiv(P站)的插图 传送链接

  10. Mybatis-对数据库的关联查询

            由于MyBatis逆向工程生成的代码只能进行对单表的操作(功能已经很强大了),但是远远不能满足开发的需要,下面就简单讲解下MyBatis进行关联查询的简单案例. 一.一对一关联查询 1 ...