Menu
Coddy logo textTech

PATH変数

CoddyのTerminalジャーニー「基礎」セクションの一部 — レッスン 61/82。

PATH 変数は、システムで最も重要な環境変数のひとつです。コマンドを入力したときにシェルが実行可能プログラムを探す場所を教えます。

lscat のようなコマンドを実行すると、シェルはこれらのプログラムがどこに保存されているかを魔法のように知っているわけではありません。PATH で定義されたディレクトリのリストを検索します。以下で確認できます:

echo $PATH

次のようなものが表示されます:

/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

各ディレクトリはコロン(:)で区切られています。ls と入力すると、シェルは順番に各ディレクトリをチェックします:最初に /usr/local/bin、次に /usr/bin、そして ls プログラムが見つかるまで続きます。

これらのディレクトリのいずれにもプログラムが存在しない場合、「command not found」エラーが発生します。これが PATH を理解することが重要な理由です。

新しいソフトウェアをインストールしたり、自分のスクリプトを作成したりする際、それらはPATHにリストされたディレクトリ内になければなりません。そうでなければ、それらを実行するために完全なパスを入力する必要があります。

コマンドの正確な場所を which を使って調べることができます:

which ls

これは、そのコマンドを入力すると実行されるプログラムへの完全なパスを表示します。

challenge icon

チャレンジ

簡単

which コマンドを使用して、cat プログラムのフルパスを見つけます。

which コマンドは、あなたの PATH 変数にリストされたディレクトリを検索し、コマンドの実行可能ファイルが正確にどこにあるかを表示します。

出力には cat プログラムのフルパス(/usr/bin/cat/bin/cat のようなもの)が表示されるはずです。

ヒント: コマンドの形式は which command_name です。

チートシート

PATH 変数は、シェルに実行可能プログラムを探す場所を教えます。以下のコマンドで確認できます:

echo $PATH

出力は、コロン (:) で区切られたディレクトリを表示します:

/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

コマンドを実行すると、シェルはこれらのディレクトリを順番に検索してプログラムを見つけます。

コマンドの正確な場所を見つけるには、which を使用します:

which ls

自分で試してみよう

ターミナル
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

基礎のすべてのレッスン