hash命令使用说明

1、命令概述

hash命令负责显示与清除命令运行时系统优先查询的哈希表(hash table)。
当执行hash命令不指定参数或标志时,hash命令向标准输出报告路径名列表的内容。此报告含有先前hash命令调用找到的当前shell环境中命令的路径名。而且还包含通过正常命令搜索进程调用并找到的那些命令。

2、命令语法

hash【选项】 【参数】 

3、命令选项

-d<指令>:在哈希表中清除某个命令记录记录
-l:显示哈希表中的命令
-p<指令>:将具有完整路径的命令加入到哈希表中
-r:清除哈希表中的所有记录
-t<指令>:显示哈希表中命令的完整路径

4、命令示例

4.1 显示hash表中的命令:

1 [root@lzg ~]# hash          
2 hits    command
3    4    /usr/bin/tty
4    4    /usr/bin/who
5    2    /usr/bin/w
6 [root@lzg ~]# hash -l 7 builtin hash -p /usr/bin/tty tty 8 builtin hash -p /usr/bin/who who 9 builtin hash -p /usr/bin/w w

4.2 -p 向哈希表中添加命令:

1 [root@lzg ~]# hash -p /usr/sbin/adduser myadduser
2 [root@lzg ~]# hash -l
3 builtin hash -p /usr/bin/tty tty
4 builtin hash -p /usr/sbin/adduser myadduser
5 builtin hash -p /usr/bin/who who
6 builtin hash -p /usr/bin/w w

4.3 -d 删除哈希表中的某一条命令:

1 [root@lzg ~]# hash -d myadduser
2 [root@lzg ~]# hash -l
3 builtin hash -p /usr/bin/tty tty
4 builtin hash -p /usr/bin/who who
5 builtin hash -p /usr/bin/w w

4.4 -t 显示哈希表中命令的完整路径:

1 [root@lzg ~]# hash -t whoami
2 /usr/bin/whoami

4.5 -r 清除哈希表中的所有记录:

 1 [root@lzg ~]# hash
 2 hits    command
 3    4    /usr/bin/tty
 4    1    /usr/bin/mv
 5    4    /usr/bin/who
 6    2    /usr/bin/whoami
 7    2    /usr/bin/w
 8 [root@lzg ~]# hash -r
 9 [root@lzg ~]# hash
10 hash: hash table empty

 

posted @ 2019-11-06 17:09  网络小白-lzg  阅读(1305)  评论(0编辑  收藏  举报