Linux命令详解用法_hash

▼hash 缓存表

  • 系统初始hash表为空,当外部命令执行时,默认会从PATH路径下寻找该命令,找到后会将这条命令的路径记录到hash表中,当再次使用该命令时,shell解释器首先会查看hash表,存在将执行之,如果不存在,将会去PATH路径下寻找,利用hash缓存表可大大提高命令的调用速率

hash 显示hash缓存

[root@CentOS7 ~]$hash
hits	command
   3	/usr/bin/apropos
   3	/usr/bin/whatis
   1	/usr/bin/systemctl
  22	/usr/bin/man

hash –l 显示hash缓存,可作为输入使用

-l参数带有命令的全路径

[root@CentOS7 ~]$hash -l
builtin hash -p /usr/bin/apropos apropos
builtin hash -p /usr/bin/whatis whatis
builtin hash -p /usr/bin/systemctl systemctl
builtin hash -p /usr/bin/man man

hash –p path name将命令全路径path起别名为name

[root@CentOS7 ~]$hash
hits	command
   0	/usr/bin/free
   2	/usr/bin/lsblk
   2	/usr/bin/uname
   1	/usr/bin/man
   1	/usr/bin/tr
   1	/usr/bin/ls
   1	/usr/bin/tree
   2	/usr/bin/free
[root@CentOS7 ~]$hash -p /usr/bin/free Myfree

`free=Myfree`
[root@CentOS7 ~]$Myfree
              total        used        free      shared  buff/cache   available
Mem:         995896      187620      426380        3532      381896      596012
Swap:       2097148       26276     2070872
[root@CentOS7 ~]$free
              total        used        free      shared  buff/cache   available
Mem:         995896      187404      426596        3532      381896      596228
Swap:       2097148       26276     2070872

hash –t name 打印缓存中name的路径

[root@CentOS7 ~]$hash
hits	command
   1	/usr/bin/lsblk
   2	/usr/bin/uname
   1	/usr/bin/man
   1	/usr/bin/tr
   1	/usr/bin/ls
   1	/usr/bin/tree
   2	/usr/bin/free
[root@CentOS7 ~]$hash -t lsblk
/usr/bin/lsblk

hash –d name 清除name缓存

在这里插入图片描述

hash –r 清除缓存

[root@CentOS7 ~]$hash 
hits	command
   3	/usr/bin/apropos
   3	/usr/bin/whatis
   1	/usr/bin/systemctl
  22	/usr/bin/man
[root@CentOS7 ~]$hash -r
[root@CentOS7 ~]$hash
hash: hash table empty
  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

十三y

你的鼓励就是我创作最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值