】コマンド——実行コマンドのフルパスを表示する本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、「which」コマンドです。本連載では、Linuxの基本的なコマンドについて、基本的な書式からオプション、具体的な実行例までを分かりやすく紹介していきます。今回は、実行コマンドのフルパスを表示する「which」コマンドです。実行例コマンドの実行ファイルを探すエイリアス(alias)も検索するビルトインコマンドを検索するPATHにある全ての実行ファイルを表示するwhichコマンドとは?「which」は、指定されたコマンドを、環境変数PATHに設定されているディレクトリを順番に調べて、最初に見つかった実行ファイルを表示するコマンドです。コマンド名」で、実行コマンドのフルパスを表示します。]は省略可能な引数を示しています目次に戻るwhichコマンドの主なオプションwhichコマンドの主なオプションは次の通りです。名前」では、指定した名前で実行されるコマンドの実行ファイルをフルパスで表示します。passwd」では「passwd」コマンドの実行ファイルが表示されます。whichコマンドは、環境変数PATHに登録されているディレクトリにある実行可能ファイルを検索します。検索はPATHの登録順で、デフォルトでは最初に見つかったファイルだけを表示します。「passwd」コマンドの実行ファイルがフルパスで表示された目次に戻るエイリアス(alias)も検索するwhichコマンドは、環境変数PATHに登録されているディレクトリにある実行可能ファイルを検索します。環境変数PATHに登録されているディレクトリは、先に書かれているものが優先されます。ls」を実行すれば、「どこにあるlsコマンドが実行されているか」「lsコマンドがどこにあるか」が分かります。「ls」と同じ名前のエイリアス(alias)が登録されている場合は、実際に実行されるのはエイリアスになります。「-i」オプション(「--read-alias」オプション)を使うと、エイリアスの登録内容も併せて検索することができます。「-i」オプション(「--read-alias」オプション)は、標準入力からエイリアスを読み込みます。ls」のように指定して検索します。CentOSの場合は、「which」という名前のエイリアスで常に「--read-alias」オプションでエイリアスも検索するよう設定されています。-i」でエイリアスに登録されている「ls」も一緒に表示される目次に戻るビルトインコマンドを検索するwhichコマンドでは、「cd」や「echo」のようなシェルのビルトインコマンドは検索できません。cd」のように指定して検索しましょう。cd」ならば「/bin/cd」(CentOSでは「/usr/bin/cd」)のように表示されます。builtin」)目次に戻るPATHにある全ての実行ファイルを表示するwhichコマンドは、デフォルトでは環境変数PATHに登録されているディレクトリを順番に検索して、最初に見つけた実行可能ファイルを表示します。全ての実行ファイルを表示したい場合は、「-a」オプションを指定します。コマンド名(PATHにある全ての実行ファイルを表示する)例えば、以下の実行例では「tree」コマンドを探しています。treeコマンドは、ディレクトリをツリー表示するというコマンドで、筆者がCentOSに追加インストールしました。tree」では「/usr/local/bin/tree」と表示されるので、「/usr/local/bin/tree」が実行されると分かります。tree」で確認すると「/home/study/bin/tree」にも同名の実行可能ファイルが存在することが分かります(画面4)。ユーザー「study」のホームディレクトリ下にも同名の実行ファイルがあることが分かるなお、CentOSでは、whichコマンドが「--show-tilde」付きで実行されるようにエイリアスが設定されているため、ホームディレクトリ下にある実行可能ファイルは、「~/bin/tree」のように表示されます(画面5)。passwd」のように「/usr/bin」にあるコマンドを「-a」で調べると、「/usr/bin」と「/bin」の2行は必ず表示されることになります(画面6)。めぐみ)PC-9801N/PC-386MからのDOSユーザー。1992年より生産管理のパッケージソフトウェアの開発およびサポート業務を担当。のち退社し、専業ライターとして活動を開始。著書に『図解でわかるLinux』『らぶらぶLinuxシリーズ』『はじめてでもわかるSQLとデータ設計』『シェルの基本テクニック』など。メールマガジンをご購読ください。申し込みページへITmediaはアイティメディア株式会社の登録商標です。