加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

【Bash百宝箱】shell内建命令之hash

发布时间:2020-12-13 21:15:39 所属栏目:PHP教程 来源:网络整理
导读:在shell中,内建(builtin)命令hash,格式以下: hash [-lr] [-p filename] [-dt] [name] hash命令的作用是在环境变量PATH中搜索命令name的完全路径并记住它,这样以后再次履行相同的命令时,就没必要搜索其完全路径了,而且shell每次履行环境变量PATH中的1

在shell中,内建(builtin)命令hash,格式以下:

hash [-lr] [-p filename] [-dt] [name]

hash命令的作用是在环境变量PATH中搜索命令name的完全路径并记住它,这样以后再次履行相同的命令时,就没必要搜索其完全路径了,而且shell每次履行环境变量PATH中的1个命令时,hash都会记住它。当hash不指定任何参数时,显示当前hash列表,包括每一个命令的完全路径和履行次数。选项“-l”用于显示当前hash列表中的命令及完全路径等信息。选项“-r”用于清空hash列表。选项“-p filename”用于指定命令name的路径,路径filename是1个文件而非目录。选项“-d”用于从hash列表中移除命令name对应的记录。选项“-t”用于显示hash列表中命令name的完全路径。成功履行时,hash命令的退出状态为0。

以下是hash命令的几个例子(启动1个新的shell终端开始履行):

$ hash hash: hash table empty $ hash ls $ hash top $ ps > /dev/null $ uname > /dev/null $ uname > /dev/null $ hash hits command 1 /bin/ps 2 /bin/uname 0 /bin/ls 0 /usr/bin/top $ hash -t ps /bin/ps $ hash -d uname $ hash hits command 2 /bin/ps 0 /bin/ls 0 /usr/bin/top $ hash -l builtin hash -p /bin/ps ps builtin hash -p /bin/ls ls builtin hash -p /usr/bin/top top $ hash -r $ hash hash: hash table empty

我们也能够自定义1个命令,例如“hash -p script_path foo”,命令的名字为foo,对应的shell脚本的完全路径为script_path,然后履行foo命令时,实际履行的就是其对应的shell脚本。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读