目录:

一、条件测试

1、test命令测试

2、文件测试

3、字符串比较

4、逻辑测试

二、if语句

1、if单分支语句

2、if双分支语句

3、if多分支语句

三、case语句

case多分支语句

一、条件测试

1、test命令测试

测试表达式是否成立,若成立返回0,否则返回其他数值

格式1:test 条件表达式

格式2:【 条件表达式 】   #至少有一个空格

常用的测试操作符

  • -eq∶等于(Equal)
  • -ne∶ 不等于(Not Equal)
  • -gt∶ 大于(Greater Than)
  • -It∶ 小于(Lesser Than)
  • -le∶ 小于或等于(Lesser or Equal)
  • -ge∶ 大于或等于(Greater or Equal)

注:返回0表示成立,非0值表示条件不成立

2、文件测试

[ 操作符 文件或目录 ]

常用的测试操作符

  • -d: 测试是否为目录(Directory)
  • -e: 测试目录或文件是否存在(Exist)
  • -f: 测试是否为文件(File)
  • -r: 测试当前用户是否有权限读取(Read)
  • -W: 测试当前用户是否有权限写入(Write)
  • -x: 测试当前用户是否有权限执行(eXcute)
  • -L: 测试是否为符号链接

3、字符串比较

1 格式1
2 【 字符串1 = 字符串2 】
3 【 字符串1 != 字符串2 】
4
5 格式2
6 【 -z 字符串 】 #是否空值
7 【 -n 字符串 】 # 字符集是否存在

常用的测试操作符

  • =: 字符串内容相同
  • !=: 字符串内容不同,! 号表示相反的意思
  • -z: 字符串内容为空

4、逻辑测试

格式1:【 表达式 1 】操作符 【 表达式2 】...
格式2:命令1 操作符 命令2 ...

常用的操作符∶

  • -a或&& ∶ 逻辑与,"而且"的意思,前后条件需都成立
  • -o或|l∶ 逻辑或,"或者"的意思,只需前后条件中一个成立
  • !∶逻辑否

查看主机是死是活

二、if语句的结构 

1、单分支结构

2、双分支结构

3、多分支结构 

三、case语句的结构 

case多分支语句

总结

1、条件测试的语法

文件测试、整数值比较、字符串比较、逻辑测试  

2、if条件语句的语法

单分支、双分支、多分支 

3、case多分支语句的语法

  

  

shell编程之条件语句的更多相关文章

  1. 02 shell编程之条件语句

    Shell编程之条件语句 学习目标: 掌握shell脚本条件测试 掌握if语句编程 目录结构: 条件测试 条件测试概述 l  对特定的条件进行判断,以决定如何执行操作 l  测试的方法 方法1:tes ...

  2. if语句 条件测试 shell编程之条件语句

    shell 编程之条件语句一.条件测试  ① test命令 测试  ② 文件测试  ③ 整数值比较  ④ 字符串比较  ⑤ 逻辑测试二.if语句的结构  单分支结构  双分支结构  多分支结构三.ca ...

  3. Shell编程之条件语句:if、case语句

    Shell编程之条件语句:if.case语句               一.条件测试                1)test命令测试                2)整数值比较         ...

  4. Linux Shell编程(1): 条件语句

    1.if—then#!/bin/bashif date              如果命令运行成功(退出码为0),则then部分的命令被执行then   echo "good"fi ...

  5. Linux - 简明Shell编程05 - 条件语句(Case)

    脚本地址 https://github.com/anliven/L-Shell/tree/master/Shell-Basics 示例脚本及注释 #!/bin/bash var=$1 # 将脚本的第一 ...

  6. 04 shell编程之循环语句

    Shell编程之循环语句 学习目标: 掌握for循环语句编程 掌握while循环语句编程 目录结构: For循环语句 l  读取不同的变量值,以逐个执行同一组命令 l  For语句结构 for 变量名 ...

  7. shell编程之循环语句for / while / until

    shell编程之循环语句与函数 一.条件测试 二.循环语句 ① for循环语句结构(遍历) 示例1 示例2 ② while循环语句结构(迭代) 示例1 示例2 ③ until 循环语句结构 示例1 一 ...

  8. Shell编程之循环语句与echo的用法

    Shell编程之循环语句与echo的用法 目录 Shell编程之循环语句与echo的用法 一.echo用法 1. echo常用选项 2. 常用的转义字符 3. 特殊符号%.#的用法 二.循环语句 1. ...

  9. 转 功能强大的shell:if条件语句

    原文 http://blog.zol.com.cn/2322/article_2321767.html 功能强大的shell:if条件语句 if语句测试条件,测试条件返回真(0)或假(1)后,可相应执 ...

随机推荐

  1. Java 日志框架概述(slf4j / log4j / JUL / Common-logging(JCL) / logback)

    一.简介 JAVA日志在初期可能官方并没有提供很好且实用的规范,导致各公司或OSS作者选择自行造轮子,这也导致了目前初学者觉得市面上 Java 日志库繁杂的局面. 现在市面流行以 slf4j(Simp ...

  2. 【LeetCode】39. 组合总和

    39. 组合总和 知识点:递归:回溯:组合:剪枝 题目描述 给定一个无重复元素的正整数数组 candidates 和一个正整数 target ,找出 candidates 中所有可以使数字和为目标数  ...

  3. python中两种拷贝目录方法的比较

    首先是用python自己的api: shutil.copytree('./build/tested/doc', './build/tested/build/doc') 优点是改变平台时不需要修改代码, ...

  4. cas5.3.1 从搭建到连接mysql(简而优美)

    前言: cas是单点登录服务框架,为单点登录业务提供了便捷服务,它分为client,server端,client端要聚合到我们自己的项目. server端要单独构建运行,本篇文章主要讲解一下cas5. ...

  5. springboot配置ssl-pfx

    application.yml server: port: 9443 ssl: key-store: classpath:4148017_qra.meeno.net.pfx key-store-typ ...

  6. 针对Hbuilderx内置终端无法输入问题,总结了三种方法供大家参考

    下图,是内置终端无法输入的现象(本人使用的第三种方案,解决了该问题) 第一种解决方案,也是网上推荐最多的方案: 打开Hbuilder安装路径下插件文件夹中的main.js文件:HBuilderX\pl ...

  7. C#多线程实践-锁和线程安全

    锁实现互斥的访问,用于确保在同一时刻只有一个线程可以进入特殊的代码片段,考虑下面的类: class ThreadUnsafe { static int val1, val2; static void ...

  8. 消除不受信任的HTML (来防止XSS攻击)

    问题 在做网站的时候,经常会提供用户评论的功能.有些不怀好意的用户,会搞一些脚本到评论内容中,而这些脚本可能会破坏整个页面的行为,更严重的是获取一些机要信息,此时需要清理该HTML,以避免跨站脚本cr ...

  9. redis知识点及常见面试题

    redis知识点及常见面试题 参考: https://zm8.sm-tc.cn/?src=l4uLj4zF0NCIiIjRnJGdk5CYjNGckJLQrIqNiZaJnpOWjIvQno2Llpy ...

  10. 彻底搞懂volatile关键字

    对于volatile这个关键字,相信很多朋友都听说过,甚至使用过,这个关键字虽然字面上理解起来比较简单,但是要用好起来却不是一件容易的事.这篇文章将从多个方面来讲解volatile,让你对它更加理解. ...