Shell 版本和命令版本

Shell 版本和命令版本

该命令的手册页echo指出:

你的 shell 可能有自己版本的 echo ...

它到底是什么意思以及如何检查哪个 shell 具有哪个 echo 版本?

答案1

您可以按如下方式检查:命令

$ type -a echo
  echo is a shell builtin
  echo is /bin/echo

返回全部相关命令的可能版本(回声,在我们的例子中);这表明我有两个都可执行文件名为/bin/echoshell 内置命令,IE我的 shell 中有一个相同的名称的不同命令,并且执行几乎完全相同的功能。

为了知道这两个可能性中哪一个会被执行,请尝试

 $ type -t echo
   builtin

这表明如果你只是打呼应某事,将使用 shell 内置命令,不是可执行文件/bin/echo。如果你坚持使用该文件,只需尝试

$ env echo something 

为了得到男人有关任一版本的信息,您应该使用

$ man echo

或者

$ info echo

对于可执行文件/bin/echo, 和

$ help echo

对于 shell 内置命令。比较这两个输出将显示它们的差异。

答案2

大多数 shell 都有自己的内置命令echo来加速echo命令。你可以检查:

$ type echo
echo is a shell builtin
$ type printf
cp is a tracked alias for /bin/cp

相关内容