算术运算符
  expr 是一款表达式计算工具,使用它能完成表达式的求值操作
  加法:expr a+b
    两个数相加使用的是反引号`而不是单引号‘’
  减法:expr a-b
  乘法:expr a\*b
  除法:expr b/a
  取余:expr b%a
  赋值:a=$b 将把变量 b 的值赋给 a
  相等:==,用于比较两个数字,相同则返回 true
  不相等:!=,用于比较两个数字,不相同则返回 true

布尔运算符
  ! 非运算,表达式为true则返回false,不然然后true
  -o 或运算,有一个表达式为true则返回true
  -a 与运算,两个表达式都为true才返回true

字符串运算符
  = 检测两个字符串是否相等,相等返回ture
  != 检测两个字符串是否相等,不相等返回true
  -z 检测字符串长度是否为0,为0返回true
  -n 检测字符串长度是否为0,不为0返回true
  str 检测字符串是否为空,不为空返回true

关系运算符
  关系运算符只支持数字,不支持字符串,除非字符串的值是数字
  -eq 检测两个数是否相等,相等返回true
  -ne 检测两个数是否相等,不相等返回true
  -gt 检测左边的数是否大于右边,是则返回true
  -lt 检测左边的数是否小于右边的,是则返回true
  -ge 检测左边的数是否大于等于右边,是则返回true
  -le 检测左边的数是否小于等于右边,是则返回true

文件测试运算符
  文件测试运算符用于检测文件的各种属性
  -d file 检测文件是否是目录,如果是则返回true
  -f file 检测文件是否是普通文件,是则返回true
  -r file 检测文件是否可读,是则返回true
  -w file 检测文件是否可写,是则返回true

if语句

if [判断条件]
then
输出结果1
输出结果2
...
fi

结果

shell编程—运算符(五)的更多相关文章

  1. 【shell】shell编程(五)-读取参数

    通过前几篇文章的学习,我们学会了shell的基本语法.在linux的实际操作中,我们经常看到命令会有很多参数,例如:ls -al 等等,那么这个参数是怎么处理的呢? 接下来我们就来看看shell脚本对 ...

  2. shell编程基础(五): 正则表达式及其使用

    正则表达式 1.前情提要 以前我们用grep在一个文件中找出包含某些字符串的行,比如在头文件中找出一个宏定义.其实grep还可以找出符合某个模式(Pattern)的一类字符串.例如找出所有符合xxxx ...

  3. (二)Linux Shell编程——运算符、注释

    2.7 Shell运算符 Bash 支持很多运算符,包括算数运算符.关系运算符.布尔运算符.字符串运算符和文件测试运算符.原生bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 awk 和 ...

  4. Shell编程——运算符

    1.declare命令: 声明变量的类型: -:给变量设定类型属性 +:给变量取消类型属性 -i:将变量声明为整数类型 -x:将变量声明为环境变量 -p:显示变量的类型 其中export是将num变为 ...

  5. 小鸟初学Shell编程(五)输入输出重定向

    重定向作用 一个进程默认会打开标准输入.标准输出.错误输出三个文件描述符. 重定向可以让我们的程序的标准输出.错误输出的信息重定向文件里,那么这里还可以将文件的内容代替键盘作为一种标准输入的方式. 重 ...

  6. Shell编程(五)脚本语法

    ${}: 数据“内容”删除,替换:{}: 列表 1. 条件测试: test =~:正则匹配 2. if/then/elif/else/fi #!/bin/bash echo "Is it o ...

  7. shell编程第五天

  8. Shell编程-运算符

    1.declare命令 declare声明变量类型:declare [+/-][选项] 变量名 -:给变量设定类型属性 +:取消变量的类型属性 -a:将变量声明为数组型 -i:整数型 -x:环境变量 ...

  9. shell编程题(五)

    打印root可以使用可执行文件数. echo "root's bins: $(find ./ -type f | xargs ls -l | sed '/-..x/p' | wc -l)&q ...

随机推荐

  1. Java 容器 & 泛型:五、HashMap 和 TreeMap的自白

    Writer:BYSocket(泥沙砖瓦浆木匠) 微博:BYSocket 豆瓣:BYSocket Java 容器的文章这次应该是最后一篇了:Java 容器 系列. 今天泥瓦匠聊下 Maps. 一.Ma ...

  2. MODIS数据的下载(新地址)

    Modis数据下载方法 1.1打开网址 浏览器输入地址:https://ladsweb.nascom.nasa.gov/search 注:需要一定的等待时间,如果一直打不开,就需要FQ.(网址加载了g ...

  3. 【原创】USART异步模式配置

        特性: (1)USART只能一位一位地发送和接受数据,在起始位期间,TX端处于低电平:当闲置时,TX端为高. (2)发送和接受由一共用的波特率发生器驱动,当发送器和接收器的使能位分别置位时,分 ...

  4. Java 8 ThreadLocal 源码解析

    Java 中的 ThreadLocal是线程内的局部变量, 它为每个线程保存变量的一个副本.ThreadLocal 对象可以在多个线程中共享, 但每个线程只能读写其中自己的副本. 目录: 代码示例 源 ...

  5. React Fiber源码分析 第三篇(异步状态)

    先附上流程图~ 调用setState时, 会调用classComponentUpdater的enqueueSetState方法, 同时将新的state作为payload参数传进 enqueueSetS ...

  6. css重写checkbox样式

    一.前言 默认的checkbox长这样: <p> <span><input type="checkbox" /></span> &l ...

  7. 开源前端脚本错误监控及跟踪解决项目-BadJS 试用

    BadJS 是 一个web 前端脚本错误监控及跟踪项目.此项目为鹅厂 imweb(qq群:179045421) 团队的开源项目.此项目支持单机,集群,docker.存储支持mongodb等. 官网文档 ...

  8. Linux上Simplescalar/ARM的安装和运行文档

    本文是基于ARM的simplescalar在ubuntu下的安装说明 1.1 软件下载  *********************文件下载地址:http://yunpan.cn/cw2n7dAyfG ...

  9. 向后台提交数据:通过form表单提交数据需刷新网页 但通过Ajax提交数据不用刷新网页可通过原生态Ajax或jqueryAjax。Ajax代码部分

    原生态Ajax提交表单:需要借助XMLHttpRequest对象的open,要收通过post发送请求还要setRequsetHeader,然后把数据发送给后端,代码如下 目录结构 index.py代码 ...

  10. Java中array、List、Set互相转换

    数组转List String[] staffs = new String[]{"A", "B", "C"}; List staffsList ...