Warning: Undefined array key "custom_message" in /www/wwwroot/bbs.aaronyang.cc/wp-content/plugins/wpcopyrights/index.php on line 105

test

test

执行条件表达式。

概要

test [expr]

主要用途

  • 执行条件表达式。

参数

文件操作符:

-a FILE    如果文件存在,则为true。
-b FILE    如果文件是块特殊的,则为true。
-c FILE    如果文件是特殊字符,则为true。
-d FILE    如果文件是目录,则为true。
-e FILE    如果文件存在,则为true。
-f FILE    如果文件存在并且是常规文件,则为true。
-g FILE    如果文件是set-group-id,则为true。
-h FILE    如果文件是符号链接,则为true。
-L FILE    如果文件是符号链接,则为true。
-k FILE    如果文件的粘滞位(sticky)设置了,则为true。
-p FILE    如果文件是命名管道,则为true。
-r FILE    如果您可以读取文件,则为true。
-s FILE    如果文件存在且不为空,则为true。
-S FILE    如果文件是套接字,则为true。
-t FD      如果在终端上打开FD,则为True。
-u FILE    如果文件是set-user-id,则为true。
-w FILE    如果文件可写,则为true。
-x FILE    如果您可以执行文件,则为true。
-O FILE    如果文件有效地归您所有,则为true。
-G FILE    如果文件有效地归您的组所有,则为true。
-N FILE    如果文件自上次读取以来已被修改,则为true。

FILE1 -nt FILE2    根据修改日期,如果 file1 比 file2 新,则为true。
FILE1 -ot FILE2    根据修改日期,如果 file1 比 file2 旧,则为true。
FILE1 -ef FILE2    如果 file1 为 file2 的硬链接,则为true。

字符串运算符:

-z STRING              如果字符串为空,则为true。
-n STRING              如果字符串不为空,则为true。
STRING                 如果字符串不为空,则为true。
STRING1 = STRING2      如果字符串相等,则为true。
STRING1 != STRING2    如果字符串不相等,则为true。
STRING1 < STRING2      如果 STRING1 的字典排序在 STRING2 之前,则为true。
STRING1 > STRING2      如果 STRING1 在字典排序在 STRING2 之后,则为true。

其他运算符:

-o OPTION         如果启用了shell选项OPTION,则为true。
-v VAR            如果设置了shell变量VAR,则为true。
-R VAR            如果设置了shell变量VAR并且是变量引用,则为true。
!EXPR            如果expr为假,则为true。
EXPR1 -a EXPR2    如果expr1和expr2都为true,则为true。
EXPR1 -o EXPR2    如果expr1或expr2为true,则为true。
arg1 OP arg2      算术表达式测试; OP是 -eq,-ne,-lt,-le,-gt,-ge 中的一个;算术表达式为真时返回true。

返回值

如果表达式执行结果为成功时返回0,当表达式执行结果为失败或给出非法参数时返回1。

例子

# 执行条件表达式并显示返回值。
[root@pc root]$ test ! "abc" == 123; echo $?
0

# 等价形式,注意:方括号 [ 后面的空格以及方括号 ] 前面的空格。
[root@pc root]$ [ ! "abc" == 123 ]; echo $?
0

[root@pc root]$ [[ ! "abc" == 123 ]]; echo $?
0

注意

  1. 该命令等价于 [
  2. 编写 bash 条件表达式可用内建命令 test[ ,组合命令 [[
    • 关于条件表达式可以查看这里
    • 关于内建命令的索引可以查看这里
    • 关于组合命令的索引可以查看这里
  3. 该命令是bash内建命令,相关的帮助信息请查看help命令。

若文章对你有帮助,可以点赞或打赏支持我们。发布者:Aurora,转载请注明出处:http://61.174.243.28:13541/AY-knowledg-hub/test/

(0)
AuroraAurora站点维系者
上一篇 2024年 3月 11日 下午5:35
下一篇 2024年 3月 11日 下午5:40

相关推荐

  • lvresize

    文章目录lvresize补充说明语法选项参数实例 lvresize 调整逻辑卷空间大小 补充说明 lvresize命令 用于调整LVM逻辑卷的空间大小,可以增大空间和缩小空间。使用…

    入门教程 2023年 12月 19日
  • setpci

    文章目录setpci补充说明语法选项参数实例 setpci 查询和配置PCI设备的使用工具 补充说明 setpci命令 是一个查询和配置PCI设备的使用工具。 语法 setpci(…

    入门教程 2024年 3月 4日
  • parted

    文章目录parted补充说明语法选项参数实例 parted 磁盘分区和分区大小调整工具 补充说明 parted命令 是由GNU组织开发的一款功能强大的磁盘分区和分区大小调整工具,与…

    入门教程 2024年 3月 1日
  • lsusb

    文章目录lsusb补充说明语法选项实例 lsusb 显示本机的USB设备列表信息 补充说明 lsusb命令 用于显示本机的USB设备列表,以及USB设备的详细信息。 lsusb命令…

    入门教程 2023年 12月 19日
  • HTTP2

    HTTP/2(超文本传输协议第2版,最初命名为HTTP 2.0),简称为h2(基于TLS/1.2或以上版本的加密连接)或h2c(非加密连接), HTTP/2 是 HTTP 协议的第…

    2023年 5月 14日
  • CentOS安装gcc组件

    CentOS不带gcc及组件,要使用就需要安装。 一键安装 yum -y install gcc gcc-c++ kernel-devel //安装gcc、c++编译器以及内核文件

    2021年 7月 13日
  • sar

    文章目录sar补充说明语法选项参数实例 sar 系统运行状态统计工具 补充说明 sar命令 是Linux下系统运行状态统计工具,它将指定的操作系统状态计数器显示到标准输出设备。sa…

    入门教程 2024年 3月 4日
  • nologin

    文章目录nologin补充说明语法实例 nologin 拒绝用户登录系统 补充说明 nologin命令 可以实现礼貌地拒绝用户登录系统,同时给出信息。如果尝试以这类用户登录,就在l…

    入门教程 2024年 1月 10日
  • Mutex

    文章目录MutexMutex含有竞态条件的程序使用 Mutex使用信道处理竞态条件Mutex vs 信道 Mutex 上一节:第二十四篇 Select下一节:第二十六篇 结构体取代…

    2023年 12月 5日
  • chmod

    文章目录chmod概要主要用途参数选项返回值例子注意 chmod 用来变更文件或目录的权限 概要 chmod [OPTION]… MODE[,MODE]… FILE… …

    入门教程 2023年 12月 7日

发表回复

登录后才能评论
Translate »