Home | Mirror | Search | ITEYE 博客 | OSChina 博客 | 51CTO 博客 |
hase 命令:用來顯示和清除哈希表,執行命令的時候,系統將先查詢哈希表。
當你輸入命令,首先在hash表中尋找,如果不存在,才會利用$PATH環境變數指定的路徑尋找命令,然後加以執行。同時也會將其放入到hash table 中,當下一次執行同樣的命令時就不會再通過$PATH尋找。以此提高命令的執行效率。
顯示哈希表中命令使用頻率
$ hash hits command 6 /usr/bin/svn 1 /bin/chown 3 /bin/bash 4 /usr/bin/git 12 /usr/bin/php 1 /bin/rm 1 /bin/chmod 1 /usr/bin/nmap 5 /bin/cat 13 /usr/bin/vim 3 /usr/bin/sudo 4 /bin/sed 2 /bin/ps 2 /usr/bin/man 23 /bin/ls
顯示哈希表
$ hash -l builtin hash -p /usr/bin/svn svn builtin hash -p /bin/chown chown builtin hash -p /bin/bash bash builtin hash -p /usr/bin/git git builtin hash -p /usr/bin/php php builtin hash -p /bin/rm rm builtin hash -p /bin/chmod chmod builtin hash -p /usr/bin/nmap nmap builtin hash -p /bin/cat cat builtin hash -p /usr/bin/vim vim builtin hash -p /usr/bin/sudo sudo builtin hash -p /bin/sed sed builtin hash -p /bin/ps ps builtin hash -p /usr/bin/man man builtin hash -p /bin/ls ls
顯示命令的完整路徑
$ hash -t git /usr/bin/git
向哈希表中增加內容
$ hash -p /home/www/deployment/run run $ run Usage: /home/www/deployment/run [OPTION] <server-id> <directory/timepoint> OPTION: development <domain> <host> testing <domain> <host> production <domain> <host> branch {development|testing|production} <domain> <host> <branchname> revert {development|testing|production} <domain> <host> <revision> backup <domain> <host> <directory> release <domain> <host> <tags> <message> list list <domain> <host> clean {development|testing|production} <domain> <host> log <project> <line> conf list cron show cron setup cron edit
命令等同於
PATH=$PATH:$HOME/www/deployment export PATH
刪除哈希表內容
$ hash -r $ hash -l hash: hash table empty