![]() | コマンドの場所を調べるには 北浦訓行 |
コマンドが置かれているディレクトリを調べるには、whichコマンドを使用する。
$ which vedit |
whichコマンドは、環境変数のPATHに設定されているディレクトリ順に調べ、最初に見つかったコマンドを表示する。PATHに設定されている全ディレクトリを調べるには、-aオプションを使用する。
$ which -a vedit |
コマンド(プログラム)のディレクトリを知るにはでは、typeというbashの組み込みコマンドを紹介している。このtypeコマンドとwhichコマンドにはどのような違いがあるのだろうか。
whichコマンドは、コマンドのフルパスを表示するプログラムであるのに対して、typeコマンドは、指定したコマンドがbashでどのように解釈されるかを調べるコマンドだ。例えば、エイリアスされたlsコマンドをwhichとtypeの両方で調べてみると、whichコマンドでは「lsはエイリアスされていて、オリジナルのlsは/bin/lsにある」と表示されるが、typeコマンドでは、「lsは`ls -F --color=auto'とエイリアスされている」と表示される。
$ which ls |
さらに、両者の違いはbashの組み込みコマンドを調べたときに顕著になる。例えば、cdコマンドの場合は、以下のようになる。
$ which cd |
![]() | ![]() | ||
![]() | ![]() | ||
![]() | ![]() | ||
![]() | ![]() | ||
![]() | ![]() | ||
![]() | ![]() | ||
![]() | ![]() | ||
![]() | ![]() | ||
![]() | ![]() | ||
![]() | ![]() | ||
![]() | ![]() | ||
![]() |
![]() | |
![]() |