test命令 – 检查条件是否成立

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

test 命令期望在命令行中找到一个参数,当 shell 没有为变量赋值时,则将该变量视为空。这意味着在处理脚本时,一旦脚本寻找的参数不存在,则 test 将报告该错误。

语法格式:test  [表达式]

常用参数:

-eq (=) 等于则为真
-ne (!=) 不等于则为真
-gt (>) 大于则为真
-ge (>=) 大于等于则为真
-lt (<) 小于则为真
-le (<=) 小于等于则为真

参考实例

判断两个数是否相等:

[root@xtuos.com ~]#
num1=100
num2=100
if test $[num1] -eq $[num2] then    
echo '两个数相等!'
else    
echo '两个数不相等!'
fi 

比较两个数大小:

[root@xtuos.com ~]#
num1=101
num2=100
if test $[num1] -ge $[num2] then    
echo '两个数相等!'
else    
echo '两个数不相等!'
fi 

判断两个字符串是否相等:

[root@xtuos.com ~]#
num1="W3Cschool"
num2="W3Cschool"
if test num1=num2 then    
echo '两个字符串相等!'
else    
echo '两个字符串不相等!'
fi 

判断文件是否存在:

[root@xtuos.com ~]#
cd /bin
if test -e ./bash then    
echo '文件已存在!' else    
echo '文件不存在!'
fi 

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

[root@xtuos.com ~]#
cd /bin
if test -e ./notFile -o -e ./bash then    
echo '有一个文件存在!' else    
echo '两个文件都不存在'
fi 

原创文章,作者:云东方,如若转载,请注明出处:https://www.yundongfang.com/1497.html

(0)
上一篇 2021年3月18日 下午6:29
下一篇 2021年3月18日 下午6:35

相关推荐

  • ntpd命令 – 网络时间协议(NTP)守护进程

    ntpd实用程序是一个操作系统守护程序,它可以设置和维护系统的时间与互联网标准时间服务器同步。它是RFC-5905定义的网络时间协议(NTP)第4版的完整实现,同时也是RFC-59…

    Linux命令 2021年3月18日
  • uupick命令 – 处理传送进来的文件

    当其他主机通过UUCP将文件传送进来时,可利用uupick命令取出这些文件。 语法格式:uupick [参数] 常用参数: -I 指定配置文件 -s 处理由指定主机传送过来的文件 …

    Linux命令 2021年3月19日
  • lspcmcia命令 – 显示扩展的PCMCIA调试信息

    lspcmcia命令的作用是可以显示扩展的PCMCIA调试信息,是pccardctl ls命令的别名。 pccardctl命令用于监视和控制PCMCIA插槽的状态。 如果指定了插槽…

    Linux命令 2021年3月18日
  • pvscan命令 – 列出找到的物理卷

    pvscan命令会扫描系统中连接的所有硬盘,列出找到的物理卷列表。使用pvscan命令的-n选项可以显示硬盘中的不属于任何卷组的物理卷,这些物理卷是未被使用的。 语法格式: pvs…

    Linux命令 2021年3月19日
  • builtin命令 – 执行bash内建命令

    builtin命令用于执行指定的bash内建命令, builtin命令调用的bash内建命令优先于同名的外部命令及同名的shell函数。 返回该内建命令执行的返回值,除非传递的不是…

    Linux命令 2021年3月18日
  • lvmdiskscan命令 – 扫描可见LVM2所有设备

    lvmdiskscan命令的作用是可以在系统中为LVM物理卷扫描所有的SCSI、IDE磁盘、多种设备和其他块设备。 lvmdiskscan命令会扫描所有可见的LVM2设备,而LVM…

    Linux命令 2021年3月19日
  • vgsplit命令 – 将物理卷移动到新的或现有的卷组中

    vgsplit命令的作用是可以从源卷组(物理卷)移动到新的或现有的卷组中。 使用vgsplit命令将一个或多个物理卷时,移动的物理卷可以指定物理卷路径,也可以通过-n逻辑卷名指定,…

    Linux命令 2021年3月19日
  • mkdosfs命令 – 建立DOS文件系统

    mkdosfs命令用于建立DOS文件系统。 语法格式: mkdosfs [参数] 常用参数: -c 建立档案系统之前先检查是否有坏轨 -l 从得定的档案中读取坏轨记录 -f 指定档…

    Linux命令 2021年3月19日
  • gdisk命令 – 交互式GPT操纵器

    gdisk 是一个命令界面的用于创建和操作分区表的工具。 它会自动将MBR分区表转换为较新的GPT分区表格式,或者加载GUID分区表。 与-l命令行选项一起使用时,程序将显示当前分…

    Linux命令 2021年3月19日
  • vgimport命令 – 导入卷组

    vgimport命令的作用是可以导入卷组。 从不同的系统移动导出物理卷之后,vgimport命令配合相应map文件可以让系统再次认出导出的卷组。 语法格式:vgimport [参数…

    Linux命令 2021年3月19日