hashコマンドはコマンドの場所を記憶します.(正確には記憶した場所を表示・削除したりして管理します)
hashコマンドは組み込みコマンドの様です.
たとえば今の私のシェルで実行すると以下の様になります.
$ hash hits command 1 /usr/bin/vim 0 /usr/bin/touch 2 /usr/bin/ls
それぞれのコマンドと実行回数を記憶しています.
なぜこんなことが必要なのか?
コマンド打つたびに環境変数を探し回って実行するのは無駄です. 単純なキャッシュ機構(ハッシュテーブル)がシェルには搭載されているんですね!
オプションと使い方
使い方 | 内容 |
---|---|
hash [コマンド名] | [コマンド名]をハッシュテーブルに登録します. |
hash -r [コマンド名] | [コマンド名]をハッシュテーブルから削除します. |
hash | 上述の通り,ハッシュテーブルを参照します |
hash -r | ハッシュテーブルをクリアします |