0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Linuxコマンド入門:`which` コマンド徹底解説:コマンドの場所を特定する方法についてまとめてみた

Posted at

はじめに

LinuxやmacOS、Windows(WSL)などのUnix系環境でコマンドを実行するとき、どのディレクトリにある実行ファイルが使用されるのかを確認したい場面があります。

その際に便利なのが which コマンド です。

which コマンドを使うと、コマンドの実体となる実行ファイルのフルパスを表示できます。

本記事では、which コマンドの使い方や関連する環境変数について詳しく解説します。


1. which コマンドとは?

which コマンドは、指定したコマンドがシステム内のどこに存在するかを確認するためのコマンドです。

具体的には、PATH 環境変数に登録されているディレクトリ内を検索し、一番最初に見つかった実行ファイルのパスを表示します。

基本構文

which [オプション] コマンド名

$ which python
/usr/bin/python

この場合、システムは /usr/bin/python にある python コマンドを実行していることがわかります。

Macbookの実際のターミナル画面

Screenshot 2025-03-14 at 8.52.50.png


2. which コマンドのオプション

1. -a オプション(すべてのパスを表示)

通常、which は最初に見つかったパスのみを表示しますが、-a オプションを付けると、PATH 内のすべての一致するパスを表示できます。

$ which -a python
/usr/bin/python
/usr/local/bin/python

このように、複数のバージョンの python がインストールされている場合、それぞれのパスを確認できます。

2. --help オプション(ヘルプ表示)

which コマンドの使い方を確認したい場合は、--help を使用できます。

$ which --help

3. which を活用したトラブルシューティング

1. コマンドが見つからない場合

$ which mycommand

結果が何も表示されない場合、

  • コマンドがインストールされていない
  • PATH に正しく追加されていない
    可能性があります。

2. 意図しないバージョンが実行される場合

複数のバージョンのプログラムが存在する場合、which -a で確認し、実行したいバージョンのパスを優先するように PATH を調整できます。

$ which -a python
/usr/bin/python
/usr/local/bin/python

この場合、

export PATH=/usr/local/bin:$PATH

のように優先順位を変更できます。


まとめ

  • which コマンドは、指定したコマンドがどこにあるかを確認するのに役立つ。
  • which -a を使うと、すべての該当するパスを表示できる。
  • which で見つからない場合は、PATH の設定を確認する。

which コマンドを活用して、コマンドの実行環境を正しく使ってみてください

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?