首页 > 系统相关 >shell的test命令

shell的test命令

时间:2023-01-09 18:14:39浏览次数:31  
标签:文件 shell 文件名 echo 命令 字符串 test true

目录

shell的test命令

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

1、数值测试

使用关系运算符

参数 说明
-eq 等于为true
-ne 不等于为true
-gt 大于为true
-ge 大于等于为true
-lt 小于为true
-le 小于等于为true

示例:

num1=100
num2=100
if test $[num1] -eq $[num2]
then
    echo '两个数相等!'
else
    echo '两个数不相等!'
fi

数值可以通过[]进行运算,运算符前后需要有空格

$[num1 + num2]

2、字符串测试

参数 说明
= 等于为true
!= 不等于为true
-z 字符串 字符串长度等于0为true
-n 字符串 字符串长度不等于0为true

示例:

num1="ru1noob"
num2="runoob"
if test $num1 = $num2
then
    echo '两个字符串相等!'
else
    echo '两个字符串不相等!'
fi

3、文件测试

参数 说明
-e 文件名 如果文件存在则为真
-r 文件名 如果文件存在且可读则为真
-w 文件名 如果文件存在且可写则为真
-x文件名 如果文件存在且可执行则为真
-s 文件名 如果文件存在且至少有一个字符则为真
-d 文件名 如果文件存在且为目录则为真
-f 文件名 如果文件存在且为普通文件则为真
-c 文件名 如果文件存在且为字符型特殊文件则为真
-b文件名 如果文件存在且为块特殊文件则为真

示例:

cd /bin
if test -e ./bash
then
    echo '文件已存在!'
else
    echo '文件不存在!'
fi

另外,Shell 还提供了与( -a )、或( -o )、非( ! )三个逻辑操作符用于将测试条件连接起来,其优先级为: ! 最高, -a 次之, -o 最低。例如:

cd /bin
if test -e ./notFile -o -e ./bash
then
    echo '至少有一个文件存在!'
else
    echo '两个文件都不存在'
fi

标签:文件,shell,文件名,echo,命令,字符串,test,true
From: https://www.cnblogs.com/lgxdev/p/17037817.html

相关文章

  • shell输入输出重定向
    shell输入输出重定向从你的终端向另外一个地方输入,这种方式将标准输出,从另外一个地方向你的终端输入,叫做输入。也就是以你的当前终端作为参照物。重定向命令列表如下:......
  • shell函数
    shell函数1、基本语法shell函数定义格式如下:[function]funname[()]{action;[returnint;]}说明:1、可以带functionfun()定义,也可以直接fun()......
  • shell字符与数组之间的判断
    shell字符与数组之间的判断[[数组=~字符]]循环判断,匹配返回true if![[$allServer=~$1]]&&[$1!="all"];then echo"notfindparameter:$1,param......
  • 火山引擎 DataTester:5 个优化思路,构建高性能 A/B 实验平台
    导读:DataTester是由火山引擎推出的A/B测试平台,覆盖推荐、广告、搜索、UI、产品功能等业务应用场景,提供从A/B实验设计、实验创建、指标计算、统计分析到最终评估上线......
  • 编辑可执行service weblogic start命令启动weblogic服务脚本
    转至:https://blog.csdn.net/VickHUC/article/details/88416046《一》创建weblogic文件,并编辑vi/etc/init.d/weblogic加入下面内容,如果是粘贴进去,切记要检查开头和末......
  • Shell脚本总结
    sed-i 插入|替换sed-i'1iabc'/tmp/abc.txt在第一行之前插入abcsed-i'1aefg'/tmp/abc.txt在第一行之后插入efgsed-i'1cxyz'/tmp/abc.txt把第一行数......
  • python接口自动化,解决多线程多次执行conftest.py文件内容
    最近在做接口自动化,在使用ytest-xdist多线程执行用例时发现了一个问题,就是conftest.py文件里的内容,也被多次执行了, conftest.py放的是登录等前后置方法,多次执行这不是......
  • 调用CAD快捷键和命令时为什么会提示未知命令?
    CAD设计过程中,为了提高绘图效率,少不了要用到各种常用的CAD快捷键和命令,可是为什么在调用某些常用CAD快捷键和命令时会提示未知命令呢?下面就和小编一起来看看吧!1、部分命令......
  • VsCode里面运行mvn命令显示The JAVA_HOME environment variable is not defined corre
    问题描述关于这个问题,就是环境配置出了问题!!!问题解决在settings.json里面,配置的环境的路径不能出错,我就是在配置的时候,名为Environments的文件夹写成Environment了,才......
  • CAD常用命令:附着命令(ATTACH)
    本节CAD教程给大家分享CAD常用命令之附着命令(ATTACH)的相关使用技巧,对此感兴趣的设计师小伙伴可以和小编一起来简单了解一下此CAD常用命令哦~浩辰CAD软件中附着命令(ATTACH)......