当前位置: 首页 > news >正文

linux bash中 test命令详解

test命令用于检查某个条件是否成立。它可以进行数值、字符和文件三方面的测试。

1、数值测试

  • -eq 等于
  • -ne 不等于
  • -gt 大于
  • -ge 大于或等于
  • -lt 小于
  • -le 小于或等于

例如,我们可以测试两个变量是否相等:

num1=100
num2=200
if test $num1 -eq $num2
thenecho 'Two values are equal!'
elseecho 'Two values are not equal!'
fi

2、字符串测试

  • = 等于
  • != 不等于
  • -z 字符串长度是否为0,长度为0返回真
  • -n 字符串长度是否为0,长度不为0返回真

例如,我们可以测试两个字符串是否相同:

str1="hello"
str2="world"
if test str1 = str2
thenecho 'Two strings are the same!'
elseecho 'Two strings are different!'
fi

3、文件测试

  • -e 文件是否存在
  • -d 是否存在并且是一个目录
  • -f 是否存在并且是一个文件
  • -r 文件是否存在并且可读
  • -w 文件是否存在并且可写
  • -x 文件是否存在并且可执行

例如,我们可以测试文件是否存在并且是一个目录:

dir_path="./my_dir"
if test -d $dir_path
thenecho 'The directory exists!'
elseecho 'The directory does not exist!'
fi

注意: [test 的简化版本,所以下面两种写法是等价的:

if test $a -eq $b if [ $a -eq $b ]

http://www.lryc.cn/news/156865.html

相关文章:

  • 获取当前时间并转换为想要的格式
  • 如何实现自动化测试?
  • c++中的对齐问题
  • 力扣(LeetCode)算法_C++—— 存在重复元素
  • OpenCV实现Photoshop曲线调整
  • 【探索Linux】—— 强大的命令行工具 P.8(进程优先级、环境变量)
  • 蓝牙协议栈BLE
  • 企业架构LNMP学习笔记17
  • php 获取每月开始结束时间,指定月份的开始结束时间戳
  • Docker技术入门| Part03:Dockerfile详解(Dockerfile概念、Dockerfile 指令、使用Dockerfile构建镜像)
  • 分享一个有意思的线程相关的程序运行题
  • 集合的进阶学习
  • Java真过饱和了吗?现在学Java迟了?
  • glibc2.35-通过tls_dtor_list劫持exit执行流程
  • linux-OpenSSL升级
  • Nginx全家桶配置详解
  • CMake生成Visual Studio工程
  • 数学建模--K-means聚类的Python实现
  • 防坠安全带上亚马逊美国站要求的合规标准是什么?
  • PDF转Word的方法分享与注意事项。
  • gitlab配置webhook,commit message的时候校验提交的信息
  • 借助CIFAR10模型结构理解卷积神经网络及Sequential的使用
  • Java # Java基础八股
  • 【Spring Boot】SpringBoot 2.6.6 集成 SpringDoc 1.6.9 生成swagger接口文档
  • 【算法】快速排序 详解
  • 架构师spring boot 面试题
  • 电商系统架构设计系列(十一):在电商的交易类系统中,如何正确地使用 Redis 这样的缓存系统呢?需要考虑哪些问题?
  • MySQL数据库和表的操作
  • DAY-01--分布式微服务基础概念
  • 记:一次关于paddlenlp、python、版本之间的兼容性问题