linux bash中 test命令详解

23 篇文章 0 订阅

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

1、数值测试
  • -eq 等于
  • -ne 不等于
  • -gt 大于
  • -ge 大于或等于
  • -lt 小于
  • -le 小于或等于

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

num1=100
num2=200
if test $num1 -eq $num2
then
    echo 'Two values are equal!'
else
    echo 'Two values are not equal!'
fi
2、字符串测试
  • = 等于
  • != 不等于
  • -z 字符串长度是否为0,长度为0返回真
  • -n 字符串长度是否为0,长度不为0返回真

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

str1="hello"
str2="world"
if test str1 = str2
then
    echo 'Two strings are the same!'
else
    echo 'Two strings are different!'
fi
3、文件测试
  • -e 文件是否存在
  • -d 是否存在并且是一个目录
  • -f 是否存在并且是一个文件
  • -r 文件是否存在并且可读
  • -w 文件是否存在并且可写
  • -x 文件是否存在并且可执行

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

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

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

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值