命令行手册

Man » test 手册在线 - test man 页面详细的在线文档

🌍
test - 检查文件类型并比较值

概要

test EXPRESSION
test
[ EXPRESSION ]
[ ]
[ OPTION

描述

根据 EXPRESSION 的结果退出。

--help 显示此帮助信息并退出

--version
输出版本信息并退出

如果省略了 EXPRESSION,则默认为 false。 否则,EXPRESSION 为 true 或 false,并设置退出状态。 它可以是以下之一:

( EXPRESSION )
EXPRESSION 为 true

! EXPRESSION
EXPRESSION 为 false

EXPRESSION1 -a EXPRESSION2
EXPRESSION1 和 EXPRESSION2 都为 true

EXPRESSION1 -o EXPRESSION2
EXPRESSION1 或 EXPRESSION2 为 true

-n STRING
STRING 的长度不为零

STRING 等同于 -n STRING

-z STRING
STRING 的长度为零

STRING1 = STRING2
这两个字符串相等

STRING1 != STRING2
这两个字符串不相等

STRING1 > STRING2
在当前区域设置中,STRING1 大于 STRING2

STRING1 < STRING2
在当前区域设置中,STRING1 小于 STRING2

INTEGER1 -eq INTEGER2
INTEGER1 等于 INTEGER2

INTEGER1 -ge INTEGER2
INTEGER1 大于或等于 INTEGER2

INTEGER1 -gt INTEGER2
INTEGER1 大于 INTEGER2

INTEGER1 -le INTEGER2
INTEGER1 小于或等于 INTEGER2

INTEGER1 -lt INTEGER2
INTEGER1 小于 INTEGER2

INTEGER1 -ne INTEGER2
INTEGER1 不等于 INTEGER2

FILE1 -ef FILE2
FILE1 和 FILE2 具有相同的设备号和 inode 号

FILE1 -nt FILE2
FILE1 比 FILE2 更新(修改日期)

FILE1 -ot FILE2
FILE1 比 FILE2 旧

-b FILE
FILE 存在并且是块设备

-c FILE
FILE 存在并且是字符设备

-d FILE
FILE 存在并且是一个目录

-e FILE
FILE 存在

-f FILE
FILE 存在并且是一个普通文件

-g FILE
FILE 存在并且设置了 set-group-ID 位

-G FILE
FILE 存在并且由有效的组 ID 拥有

-h FILE
FILE 存在并且是一个符号链接(与 -L 相同)

-k FILE
FILE 存在并且设置了粘滞位

-L FILE
FILE 存在并且是一个符号链接(与 -h 相同)

-N FILE
FILE 存在并且自从上次读取以来已修改

-O FILE
FILE 存在并且由有效的用户 ID 拥有

-p FILE
FILE 存在并且是一个命名管道

-r FILE
FILE 存在并且用户具有读取权限

-s FILE
FILE 存在并且大小大于零

-S FILE
FILE 存在并且是一个套接字

-t FD 文件描述符 FD 在终端上打开

-u FILE
FILE 存在并且设置了 set-user-ID 位

-w FILE
FILE 存在并且用户具有写入权限

-x FILE
FILE 存在并且用户具有执行(或搜索)权限

除了 -h 和 -L 之外,所有与文件相关的测试都会取消引用符号链接。 请注意,括号需要进行转义(例如,通过反斜杠),以便在 shell 中使用。 INTEGER 也可以是 -l STRING,其结果为 STRING 的长度。

二进制 -a 和 -o 具有歧义。 而是使用“test EXPR1 && test EXPR2”或“test EXPR1 || test EXPR2”。

“[" 识别 --help 和 --version,但“test”将其视为 STRING。

您的 shell 可能有自己的 test 和/或 [ 版本,通常会取代此处描述的版本。 请参阅 shell 的文档,以了解其支持的选项。

作者

Kevin Braunsdorf 和 Matthew Bradburn 编写。

报告错误

GNU coreutils 在线帮助:[https://www.gnu.org/software/coreutils/] 将任何翻译错误报告给 [https://translationproject.org/team/]

参见

access(2)

完整文档 [https://www.gnu.org/software/coreutils/test] 或在本地通过以下方式获取:info '(coreutils) test invocation'

由 Debian (9.7-3) 封装 版权所有 © 2025 自由软件基金会。 许可证 GPLv3+:GNU GPL 第 3 版或更高版本 [https://gnu.org/licenses/gpl.html]。 这是一个自由软件:您可以自由地更改和重新分发它。 在法律允许的范围内,不提供任何保证。