我在Bash中尝试了“ man echo”,它告诉我“ echo --help”将显示帮助然后退出,类似地,“ echo --version”将输出版本并退出。但是为什么它不起作用?'echo --help'只是简单地按字面意义打印'--help'。
@R ..所以,
—
Tyilo 2014年
echo -e
并且echo -n
也是一个错误,你的逻辑?
@Tyilo:见POSIX,或者我这里的问题的报道规格:etalabs.net/sh_tricks.html
—
R.,
@R ..想象一下如果执行以下操作会发生什么:printf“您输入的选项是:”; 回显“ $ opt”,shell变量opt恰好包含文本-e或-n。
—
Tyilo 2014年
@Tyilo:我喜欢重新解释这个问题的答案,而不是重新解释它。
—
R..
echo --help
是一个错误。想象一下,如果您这样做会发生什么:printf "The option you entered is: " ; echo "$opt"
并且shell变量opt
恰好包含text--help
。根据POSIX标准,echo
不允许以这种方式运行,但是GNU回声令人讨厌地不一致。