## **bash的条件测试**
>[info] 条件测试:
> 判断需求是否满足
> 测试命令 :
> > test EXPRESSION
> > \[ EXPRESSION \]
> > \[\[ EXPRESSION \]\]
> > Note : EXPRESSION 前后必须有空格
**bash的测试类型 :**
>[success] 数值测试:
> > \-gt : 是否大于
> > \-ge : 大于等于
> > \-eq : 等于
> > \-ne : 不等于
> > \-lt : 小于
> > \-le : 小于等于
>[info] 字符串测试
> > \== /= : 是否等于
> > \> : 是否大于
> > < : 是否小于
> > != : 是否不等于
> > \=~ : 左侧字符串是否能够被右侧的PATTERN所匹配
> > **Note :此表达式一般用于\[\[ \]\] 中**
> > \-z "STRING" : 测试字符串是否为空,空则为真
> > \-n "STRING" : 测试字符串是否为空
> > **Note :用于字符串比较时用到的操作字符串需要用双引号**
>[success] 文件测试
> > **存在性测试**
> > \-a file
> > \-e FILE : 文件存在性测试, 存在为真
> > **文件类型测试**
> > \-b FILE : 存在且为块设备文件
> > \-c FILE : 存在且为字符设备文件
> > \-d FILE :存在且为目录文件
> > \-f FILE :存在且为普通文件
> > \-h FILE : 存在且为软连接文件
> > \-t FILE : 存在且为匿名管道文件
> > \-S FILE : 存在且为套接字文件
> > **文件普通权限测试:**
> > \-r FILE : 是否存在且可读
> > \-w FILE : 是否存在且可写
> > \-x FILE :是否存在且可执行
> > **文件特殊权限测试 :**
> > \-g FILE : 存在且拥有sgid权限
> > \-u FILE :是否存在且有suid权限
> > \-k FILE :是否存在且有sticky权限
> > **文件大小测试:**
> > \-s FILE : 是否存在且非空
> > **文件是否打开:**
> > \-t FILE :
>[info] 组合测试 :
> > 逻辑运算
> > > 第一种方式:
> > > COMMAND && COMMAND
> > > COMMAND || COMMAND
> > > ! COMMAND
> > > eg : \[ -e FILE \] && \[ -r FILE \]
> > > 第二种方式:
> > > EXPRESSION -a EXPRESSION
> > > EXPRESSION -o EXPRESSION
> > > ! EXPRESSION
> > > 必须使用测试命令进行
>[danger] bash自定义退出状态码
> exit \[n\] : 自定义退出状态码
> 注意:脚本中一旦遇到exit命令,脚本会立即终止,退出状态取决于exit命令后面的数字
> 注意 : 如果未给出脚本指定退出状态码,整个脚本的退出状态码取决于脚本中执行的最后一行命令的状态码。
- 基础
- 文档帮助
- 计算机基础知识
- Centos文件系统
- Linux基础知识入门
- Linux命令帮助文档
- 常见命令
- 其他
- vim编辑器
- 编辑命令
- 末行模式
- 常见命令
- 配置文件
- 用户useradd
- 用户login.defs
- 环境变量设置
- 常用命令
- 帮助命令
- 管道符
- 关机和重启
- 目录操作
- 目录结构
- ls
- cd
- pwd
- mkdir
- rmdir
- cp
- rm
- mv
- 文件操作
- touch
- ln 重点
- stat 重点
- file
- cat
- tac
- nl
- more
- less
- head
- tail
- 文件处理工具
- wc
- cut
- sort
- uniq
- 文件属性(权限)
- chmod
- chown
- chgrp
- umask
- sudo权限
- chattr权限
- chattr
- lsattr
- 文件特殊权限
- SetUID
- SetGID
- StickyBIT粘着位
- ACL权限
- 搜索命令
- 命令搜索whereis
- grep
- 拓展
- 元字符
- egrep
- locate
- find
- type
- 压缩和解压
- zip和unzip
- gzip和gunzip
- bzip2和bunzip2
- tar
- 网络管理
- netstat网络状态
- 消息邮件
- 软件包安装
- 源码包
- 二进制包
- rpm手工安装
- yum在线安装
- 系统管理
- 常用命令
- shell内建命令
- pstree
- bash 特性
- history 历史命令
- 补全、快捷键
- 命令行展开
- 命令执行结果
- alias命令别名
- 通配符
- 重定向及管道
- 计算机运算
- bash 中的变量的种类
- bash 的配置文件
- bash中的算术运算
- bash条件测试
- 用户和组管理
- 用户管理
- useradd
- usermod
- userdel
- passwd
- pwck
- chage
- chsh
- chfn
- id
- finger
- su
- 用户组管理
- groupadd
- groupmod
- groupdel
- gpasswd
- groups
- 用户查看
- whoami
- w
- who
- last
- lastlog
- lastb
- 网络管理
- 相关命令
- 防火墙
- 文件拷贝
- 软件工具
- 软件包管理
- Gcc软件安装
- 其他
- redis
- 相关资料
- swoole
- IDE工具
- vscode + Xdebug 断点调试
- vscode 远程链接
- git
- 不想输入账户密码
- window电脑问题
- 浏览器https访问不了
- php
- 常用函数
- rabbitMQ
- mysql
- 触发器
- 常用更新语句
- 忘记密码处理方法
- 查询
- 数据迁移
- 加索引不加锁
- 查询优化
- 基础知识
- 进程线程协程
- tp6
- 注册自定义命令空间
- Ajax异常错误
- nginx
- 域名变成ip问题
- 概念知识点
- QPS,TPS,RT概念
- Nginx服务大量TIME-WAIT
