環境変数とPATHについて解説する

"PATHを通す"って何?と思っている方々に向けて解説します
ヒーローイメージ

目次
  1. 環境変数とは
  2. 環境変数の中身を確認する
  3. PATHとは
  4. PATHを設定する(PATHを通す)

環境変数とは

  • 環境変数は、OS(オペレーティングシステム)上で動作するプログラムが参照することができる変数のことです。
  • 環境変数は、(プログラムから参照されることで)プログラムの挙動や設定を変更するために利用されます。
  • 環境変数は、Windows、Mac、Linux(Debian系、RedHat系)、などの各OSに存在します。
  • 環境変数は、最初から用意されているものがありますが、自分で任意の値を追加することも可能です。

環境変数の中身を確認する

  • ここでは環境変数の中身を確認する方法 についてOS毎に説明します。

動作確認環境

  • Windows 11 Home

手順

  1. いくつか確認する方法がありますが、ここでは「コマンドプロンプト」を利用する方法について説明します。

  2. タスクバーの検索ボックスにて「コマンドプロンプト」で検索すると「コマンドプロンプト」が表示されるのでクリックします。

    コマンドプロンプトの起動
  3. コマンドプロンプト」を起動したら、以下のコマンドを実行します。

    実行内容
    set
  4. 実行すると、以下のような結果が表示されます。この表示されている内容が環境変数の中身です。 1行ずつ 環境変数の名前=環境変数の値 の形式で表示されています。

    実行結果
    ALLUSERSPROFILE=C:\ProgramData
    APPDATA=C:\Users\username\AppData\Roaming
    asl.log=Destination=file
    CommonProgramFiles=C:\Program Files\Common Files
    CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files
    CommonProgramW6432=C:\Program Files\Common Files
    COMPUTERNAME=DESKTOP-C8PB7U9
    
    (以下省略)
  5. 例えば以下の場合は、ALLUSERSPROFILEという環境変数にC:\ProgramDataという値が設定されていることを意味しています。

    ALLUSERSPROFILE=C:\ProgramData
  6. 以上が、環境変数の中身を確認する手順です。

PATHとは

  1. PATHとは、OSが最初から用意している環境変数の中のひとつです。 PATHには「プログラムファイルを検索させたい場所」を設定します。 といってもきちんと伝わらないと思うので、今回はWindowsでの実例を踏まえて、PATHの役割について説明したいと思います。

  2. 例えば、仮に以下の場所にjava.exeJavaプログラムファイル)があったとします。

    java.exeのファイルパス
    C:\Users\username\AppData\Local\Programs\jdk\18.0.1.1\bin\java.exe
  3. ここで例えば、「コマンドプロンプト」からCドライブ直下でjava --versionと実行してみます。 すると「コマンドプロンプト」はjavaコマンドの場所を特定できず、以下のとおりのエラーとなってしまいます。

    PATHが未設定の場合(プログラムファイル格納フォルダ外)
    C:\>java -version
    'java' は、内部コマンドまたは外部コマンド、
    操作可能なプログラムまたはバッチ ファイルとして認識されていません。
    
    
  4. 次にjava.exeが格納されているフォルダでjava --versionを実行してみます。 すると今度はプログラムの場所の特定することができ、以下のとおり実行結果が表示されます。

    PATHが未設定の場合(プログラムファイル格納フォルダ)
    C:\>cd C:\Users\username\AppData\Local\Programs\jdk\18.0.1.1\bin
    
    C:\Users\username\AppData\Local\Programs\jdk\18.0.1.1\bin>java -version
    java version "18.0.1.1" 2022-04-22
    Java(TM) SE Runtime Environment (build 18.0.1.1+2-6)
    Java HotSpot(TM) 64-Bit Server VM (build 18.0.1.1+2-6, mixed mode, sharing)
    
    
  5. つまりプログラムファイル(今回はjavaコマンド)が格納されているフォルダであれば、該当コマンドが実行することができるということです。

    Note
    厳密に言えば、格納フォルダ外からでも、以下のようにプログラムファイルをフォルダパスフォルダも含めたフルパス指定すれば、プログラムの場所を特定し、正常に実行することができます。
  6. つづいて、今度はPATHjavaコマンドの場所が以下のように設定されていた場合、さきほどの結果はどうなるでしょうか。

    PATHの設定内容(一部)
    Path=C:\Users\username\AppData\Local\Programs\jdk\18.0.1.1\bin
  7. 先程と同様に「コマンドプロンプト」からCドライブ直下でjava --versionと実行してみます。 すると今度はエラーとならず、以下のとおり実行結果が表示されます。

    PATHが設定済の場合
    C:\>java -version
    java version "18.0.1.1" 2022-04-22
    Java(TM) SE Runtime Environment (build 18.0.1.1+2-6)
    Java HotSpot(TM) 64-Bit Server VM (build 18.0.1.1+2-6, mixed mode, sharing)
    
    
  8. つまりコマンドプロンプトは、PATHに設定されているJavaプログラムファイルの格納場所を検索して特定することでできたということです。

  9. PATHはこのような性質を持っているため、コマンドプロンプトからよく実行されるコマンドのプログラムファイル格納場所を設定して利用します。

PATHを設定する(PATHを通す)

  • PATHを通すという表現をよく目にすることがあるかもしれません。これはPATHに値を設定することを意味します。この章では、OSごとにPATHに値を設定する方法を説明します。

    Note
    今回はPATHの設定方法について説明しますが、他の環境変数の設定も同様の方法で設定可能です。

動作確認環境

  • Windows 11 Home

手順

  1. タスクバーの検索ボックスにて「環境変数」で検索すると「システム環境変数の編集」が表示されるのでクリックします。

    環境変数設定の起動
  2. 環境変数ダイアログが表示されるので変更したい環境変数を選択します。今回はPATHを設定するので「Path」を選択し「編集」ボタンをクリックします。

    環境変数の編集
  3. 今回はPATHを追加設定していきます。「新規」ボタンをクリックすると値が設定できるようになるので、PATHを通したい場所を入力し「OK」ボタンをクリックします。

    環境変数の編集
  4. すると「Path」の部分に今回追加した値が追記されていることが確認できます。問題なければ「OK」をクリックして完了です。「Path」は設定値;設定値;設定値;...の形式で、セミコロン区切りで複数の設定値(場所) が設定していきます。

    環境変数の編集
  5. 以上がPATHに値を設定する方法です。

コメント


Palette Codeなるべく丁寧にプログラミング関連技術を解説するサイト