名称
test - 检查文件类型并比较值
概述
test 表达式
test
test
[ 表达式 ]
[ ]
[ 选项
描述
退出状态值取决于表达式。
- --help
- 显示此帮助信息并退出
- --version
- 显示版本信息并退出
表达式被省略,则默认为假。否则,表达式可能为真或假,且以此设置返回状态。可能出现的情况如下所示:
- ( 表达式 )
- 表达式为真
- ! 表达式
- 表达式为假
- 表达式1 -a 表达式2
- 表达式1 与表达式2 皆为真
- 表达式1 -o 表达式2
- 表达式1 或表达式2 为真
- -n 字符串
- 字符串长度非零
- STRING
- 等价于 -n 字符串
- -z 字符串
- 字符串的长度为 0
- 字符串1 = 字符串2
- 字符串相等
- 字符串1 != 字符串2
- 字符串不相等
- 整数1 -eq 整数2
- 整数1 与整数2 相等
- 整数1 -ge 整数2
- 整数1 大于或等于整数2
- 整数1 -gt 整数2
- 整数1 大于整数2
- 整数1 -le 整数2
- 整数1 小于或等于整数2
- 整数1 -lt 整数2
- 整数1 小于整数2
- 整数1 -ne 整数2
- 整数1 和整数2 不相等
- 文件1 -ef 文件2
- 文件1 和文件2 拥有相同的设备编号与 inode 编号
- 文件1 -nt 文件2
- 文件1 在修改时间上新于文件2
- 文件1 -ot 文件2
- 文件1 比文件2 更旧
- -b 文件
- 文件存在且为块特殊文件
- -c 文件
- 文件存在且为字符特殊文件
- -d 文件
- 文件存在且为目录
- -e 文件
- 文件存在
- -f 文件
- 文件存在且为普通文件
- -g 文件
- 文件存在且被设置了 set-group-ID 位
- -g 文件
- 文件存在且为有效组ID 所有
- -h 文件
- 文件存在且为一个符号链接(与 -L 相同)
- -k 文件
- 文件存在且被设置粘着位
- -L 文件
- 文件存在且为一个符号链接(与 -h 相同)
- -O 文件
- 文件存在且为有效用户ID 所有
- -p 文件
- 文件存在且为命名管道
- -r 文件
- 文件存在且被授予读权限
- -s 文件
- 文件存在且其大小大于零
- -S 文件
- 文件存在且为套接字
- -t FD
- 文件描述符 FD 在某个终端打开
- -u 文件
- 文件存在且被设置了 set-user-ID 位
- -w 文件
- 文件存在且被赋予了写权限
- -x 文件
- 文件存在且被授予执行(或搜索)权限
除了 -h 和 -L,所有与指定文件相关的测试都跟随符号链接。请注意在 shell 中圆括号需要被转义(例如,使用反斜线)。也可以把“-l 字符串”作为指定整数,其值为该字符串的长度。
注记:[ 接受 --help 和 --version 选项,但是 test 并非如此。test 将它们与其它非空字符串同等看待。
注意:您的 shell 可能内置了自己的 test 和/或 [ 程序版本,它会覆盖这里所提及的相应版本。请查阅您的 shell 文档获知它所支持的选项。
作者
由 Kevin Braunsdorf 和 Matthew Bradburn 编写。
报告错误
GNU coreutils 的在线帮助: <http://www.gnu.org/software/coreutils/>
请向 <http://translationproject.org/team/zh_CN.html> 报告 [ 的翻译错误。
请向 <http://translationproject.org/team/zh_CN.html> 报告 [ 的翻译错误。
版权
Copyright © 2014 Free Software Foundation, Inc. License GPLv3+: GNU GPL
version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.
This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.