算术运算符
  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 容器 & 泛型:六、容器讲到为什么要使用泛型

    Writer:BYSocket(泥沙砖瓦浆木匠) 微博:BYSocket 豆瓣:BYSocket ArrayList是集合类中无处不在的,泛型也是,泛型对集合类尤其有用.但是为啥要使用泛型?理解好了这 ...

  2. DWR第二篇之逆向Ajax

    1. 本示例在第一篇架构基础上添加代码 2. 首先修改web.xml里dwr的servlet配置: <!-- 配置dwr请求的servlet --> <servlet> < ...

  3. SpringMVC学习(一)———— springmvc框架原理分析和简单入门程序

    一.什么是springmvc? 我们知道三层架构的思想,并且如果你知道ssh的话,就会更加透彻的理解这个思想,struts2在web层,spring在中间控制,hibernate在dao层与数据库打交 ...

  4. JavaScript中常见的十五种设计模式

    在程序设计中有很多实用的设计模式,而其中大部分语言的实现都是基于“类”. 在JavaScript中并没有类这种概念,JS中的函数属于一等对象,在JS中定义一个对象非常简单(var obj = {}), ...

  5. golang使用chrome headless获取网页内容

    如今动态渲染的页面越来越多,爬虫们或多或少都需要用到headless browser来渲染待爬取的页面. 而最近广泛使用的headless browser解决方案PhantomJS已经宣布不再继续维护 ...

  6. 【转载】Centos系统采用NVM安装Node.js环境

    Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,用来方便地搭建快速的易于扩展的网络应用.Node.js 使用了一个事件驱动.非阻塞式 I/O 的模型,使其轻量又 ...

  7. WPF BackGroundWord 异步加载更新进度条示例

    <Window x:Class="AsynchronousLoading.MainWindow" xmlns="http://schemas.microsoft.c ...

  8. CSS的简单复习总结

    如果说网页是人的话那么CSS就是化妆品了哈哈哈,所以网页离不开CSS的装饰.id选择器和Class选择器    二者都是用来选择元素进行装饰的,我个人理解是类选择器包含了id选择器,class选择器不 ...

  9. ASP.NET Core中的Startup类

    ASP.NET Core程序要求有一个启动类.按照惯例,启动类的名字是 "Startup" .Startup类负责配置请求管道,处理应用程序的所有请求.你可以指定在Main方法中使 ...

  10. springMVC_02hello案例

    1.导入jar包 commons-logging-1.1.1.jar jackson-annotations-2.5.4.jar jackson-core-2.5.4.jar jackson-data ...