回声未输入哈希表

时间:2019-05-24 17:22:05

标签: bash

当我调用命令echo时,它不会输入到哈希表中。

我尝试了其他几个命令,这些命令相应地输入到哈希表中。

$date
Sat May 25 01:16:40 CST 2019

$hash
hits    command
   1    /bin/date

$which date
/bin/date

$hash
hits    command
   1    /usr/bin/which
   1    /bin/date

$echo “123”
“123”

$hash
hits    command
   1    /usr/bin/which
   1    /bin/date

如您所见,回显未输入到哈希表中。同样,pwd之类的命令也不会输入到哈希表中。

1 个答案:

答案 0 :(得分:2)

which是一个外部命令,不是外壳程序的一部分。因此,它无法了解shell的内置函数,函数或别名。因此其输出通常无济于事。与type进行比较:

$ hash -r
$ type date
date is /usr/bin/date
$ type echo
echo is a shell builtin

...和您有所不同。 echo是外壳程序本身的一部分,因此无需搜索外部二进制文件,因此无需存储该二进制文件的位置。