![为什么 test--help 不起作用?](https://linux22.com/image/1208044/%E4%B8%BA%E4%BB%80%E4%B9%88%20test--help%20%E4%B8%8D%E8%B5%B7%E4%BD%9C%E7%94%A8%EF%BC%9F.png)
我的 Ubuntu 运行良好。
$ lsb_release -a
LSB Version: core-11.1.0ubuntu4-noarch:printing-11.1.0ubuntu4-noarch:security-11.1.0ubuntu4-noarch
Distributor ID: Ubuntu
Description: Ubuntu 22.04.1 LTS
Release: 22.04
Codename: jammy
当我尝试内置 bashtest
命令时:
test --version
test --help
我看不到任何输出。
有效的方法:
man test
提供手册页(GNU coreutils 8.32)info test|more
test -1 -gt -2 && echo yes
表明
TEST(1) User Commands TEST(1)
NAME
test - check file types and compare values
SYNOPSIS
test EXPRESSION
test
[ EXPRESSION ]
[ ]
[ OPTION
DESCRIPTION
Exit with the status determined by EXPRESSION.
--help display this help and exit
--version
那
test --version
应该管用。
哪里有问题?
答案1
您的问题是关于“内置 bash 测试命令”但是您引用的man
和页面是该包提供的外部命令的页面。info
/usr/bin/test
coreutils
和--help
选项--version
仅在您明确调用非内置测试程序,并且仅当您以[
not形式调用它时test
,如info
摘录中所述:
如果省略 EXPRESSION,则“test”返回 false。如果 EXPRESSION 是单个参数,则“test”在参数为空时返回 false,否则返回 true。参数可以是任何字符串,包括大多数其他程序会视为选项的字符串,如“-d”、“-1”、“--”、“--help”和“--version”。要获取帮助和版本信息,请调用命令“[ --help' 和 '[ --version',不带通常的右括号。
前任。
$ /usr/bin/[ --version
[ (GNU coreutils) 8.32
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://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.
Written by Kevin Braunsdorf and Matthew Bradburn.