このページで解説している内容は、以下の YouTube 動画の解説で見ることができます。

【Linux】コマンドのパスを表示する:whichコマンド

which コマンドの概要

 「which」コマンドは、指定されたコマンドが実行可能なファイルとしてどのパスに存在するかを表示するためのUNIX系、Linux系システムのコマンドです。システムの環境変数 PATH に基づいて検索を行い、最初に見つかった一致する実行ファイルのパスを表示します。これは、どのディレクトリから実行されるコマンドがシェルに認識されているかを確認するために非常に便利です。

特徴

  • シンプルな機能: 指定したコマンドの実行ファイルのパスを表示します。
  • 複数のコマンド対応: 一度に複数のコマンドを指定して、それぞれのパスを表示できます。
  • 環境変数 PATH に依存which コマンドは PATH 環境変数にリストされているディレクトリ内を検索します。

使用目的

  • 特定のコマンドがどのパスに存在するかを確認したい場合。
  • システムにインストールされている特定のプログラムが、実際にどこにあるのかを知りたい場合。
  • 同名のコマンドが複数の場所に存在する場合に、どのパスのコマンドが実行されるかを確認したい場合。

基本的な使い方

which コマンドは、以下の形式で使用します。

【構文】
which コマンド名

主なオプションと説明

以下に、which コマンドの主なオプションとその説明を表にまとめます。

オプション説明
-aPATH 環境変数にリストされている全てのパスを表示します。
主なオプションと説明

コマンドの使用例と解説

基本的な使用例

・「which ls」コマンドを実行します。

ls」コマンドの実行ファイルのパスを表示します。

user01@ubuntu-vm:~$ which ls
/usr/bin/ls

複数のコマンドのパスを表示

・「which ls pwd」コマンドを実行します。

ls」と 「pwd」コマンドの実行ファイルのパスを表示します。

user01@ubuntu-vm:~$ which ls pwd
/usr/bin/ls
/usr/bin/pwd

全ての一致するパスを表示

・「which -a nano」コマンドを実行します。

 「nano」コマンドが PATH にリストされているすべてのディレクトリで見つかったパスを表示します。

user01@ubuntu-vm:~$ which -a nano
/usr/bin/nano
/bin/nano

まとめ

 「which」コマンドは、指定したコマンドが実行可能なファイルとしてどのパスに存在するかを迅速に特定するためのシンプルで有効なツールです。特に、同名のコマンドが複数のディレクトリに存在する場合や、システムにインストールされているプログラムがどこにあるのかを確認したい場合に役立ちます。「-a」オプションを使用することで、すべての一致するパスを表示し、より詳細な情報を得ることができます。