Shell 脚本之条件语句 与 if 语句

一、条件测试

1.1 test 命令

  test 命令用来 测试表达式是否成立(条件成立返回 0 ,不成立返回其他数值)。

test 命令 有两种形式:

  • 格式:test 条件表达式

  • 格式二:[ 条件表达式 ]方括号两边与条件表达式之间一定要用空格分隔,否则会执行失败。

  • 检查最后所执行命令的状态的最简便方法是使用 $? 查看

在这里插入图片描述

1.2 文件测试

 使用 test 命令进行 文件测试,可以用来判断 对应的是文件还是目录,或者判断是否有相应的权限等。

格式:[ 操作符 文件或目录 ]  # 注意[ ]要有空格
常用的操作符 功能
-d 测试是否为目录(Directory)
-e 测试目录或文件是否存在(Exist)
-f 测试是否为文件(File)
-r 测试当前用户是否有权限读取(Read)
-w 测试当前用户是否有权限写入(Write)
-x 测试当前用户是否有权限执行(Excute)
-L 测试是否是软链接(符号链接)文件

在这里插入图片描述
在这里插入图片描述

1.3 整数值比较

用于比较两个整数值的大小。

$() 和 反撇号 是用来提取里面命令的执行结果。

格式:[ 整数变量1 操作符 整数变量2 ]

比较符 功能 符号
-eq 等于 ==
-ne 不等于 !=
-gt 大于 />
-lt 小于 /<
-ge 大于等于
-le 小于等于

实例:
1 . 如果当前登录系统的用户数量少于5人,进行输出提示。
在这里插入图片描述
2 . 判断主内存空闲是否小于1024M

free 命令显示系统使用和空闲的内存情况,-m 选项显示内存的单位为 M。Mem是存,swap 是交换分区内存。

先获取当前内存的值(主内存空闲是指:Mem 内存行的 free 列的值),交给一个变量,再用这个变量来比较。
在这里插入图片描述
在这里插入图片描述
表达式 && 语句1 || 语句2 相当于java中的三目运算符 ?:
在这里插入图片描述

1.4 字符串比较

  • 字符串比较可用来测试 用户输入、系统环境等是否满足条件;

常用测试操作符:

  • = :两个字符串内容相同
  • != :内容不相同,!表示取反
  • -z :字符串内容为空

格式:

[  字符串1  = / ==
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值