hashコマンドとは?bashでコマンド有無を確認する

Linuxシステムにおけるhashコマンドは,bashの組み込みコマンドであり,最近実行されたプログラムのハッシュテーブルを管理するために使用される。プログラムの位置を記憶し、表示します。各コマンド名のフルパス名が表示されます。

hash [-lr] [-p pathname] [-dt] [name ...]

オプション:

-d:各NAMEの記憶された場所を忘れるために使用します。

-l: 入力として再利用可能な形式で表示します。

-p:パス名 NAMEのフルパス名としてPATHNAMEを使用します。

-r: 記憶した場所をすべて忘れます。

-t: 各NAMEの記憶された場所を表示します。複数のNAMEが与えられた場合は、各場所の前に対応するNAMEを付けます。

  if  ! hash $1 2>&1  ; then
        brew install $1
    else
        echo  $1' is already installed'
    fi