|
|
||
hashコマンドについて説明する前に、コマンドを実行したときの動きを説明する。
以下のようにhogeコマンドを実行したとする。
$ hoge
そうすると、環境変数PATHに登録されている複数のディレクトリからhogeコマンドをサーチするわけですが、
よく使うコマンドを毎回サーチするのは無駄なので、bashとかzshなんかは使用するパスをキャッシュしてるらしい。
このキャッシュを登録してる所が、ハッシュテーブルというところらしい。
ハッシュテーブルの中身は以下のようにして表示できる
~$ hash hits command 3 /usr/bin/man 3 /bin/ls
ちなみに、キャッシュをクリアする場合は、hash -rする。
~$ hash -r ~$ hash hash: hash table empty
typeコマンドなんかで、以下のようにhashedと表示されるやつは、
~$ type ls ls is hashed (/bin/ls)