PATHの通し方(Windows, Mac, Linux, Unixの環境変数設定)

  • ---

    LINEで送る
  • -

    ブックマーク
  • -

    pocket
  • -

    rss
programing image

プログラム開発環境をつくるとき、基本的な作業に環境変数の設定があります。どのプログラム言語でも関係なくかならず経験します。

俗に『PTTHを通す』といいます。

その設定方法をWindows, Mac, Linux, Unixごとに分かりやすくかんたんに説明します。

説明がかんたんではなくて本当に作業がかんたんです。気軽に見てください。

環境変数のPATHとはなにか?

まずは環境変数とは何かから。

環境変数は、OSやOSにインストールされたアプリケーションが使う定数のことです。大文字で書くのが一般的です。

何回もいろいろなところで使い、いちいち値を定義するのがめんどうなのでOS環境変数として定義します。

OSやアプリケーションは必要になったら環境変数から値を取り出して参照します。

環境変数のなかでも特殊なPATH

その環境変数のなかでPATHはちょっとちがいます。

PATHは、どの場所からでも実行したいプログラムのコマンドを定義します。

(どのディレクトリからでも実行できるコマンド)

たとえば"php"というPHPを実行するコマンドは、環境変数PATHに追加していないとき、

php

と実行しても

そんなコマンドは知らない!

と言われてしまいます。

phpコマンドを実行するためには、

/usr/bin/php

としなければなりません。/usr/bin/phpは、phpコマンドがインストールされているフルパスです。

/usr/binは、アプリケーションのコマンドのデフォルトのインストール先で、システム環境変数に追加されています。

じっさいは、/usr/binにあるphpコマンドはPATHを変更しなくても"php"で実行できます。

PATHはコマンドのショートカット

これはめんどうです。コマンドを実行するたび長いコマンドを入力することになるので。

このめんどくささを解決するのがPATHです。PATHの値に"/usr/bin/"を追加することで、

php

というコマンドがどの場所からでも実行できるようになります。

プログラム言語に関係なく

PATHを通す

という作業をするのはこのためで、

  • java
  • php
  • python

など、プログラム開発ではコマンドの実行は必ずします。そして、プログラムのソースファイルは使う人が自由にどこにでも置いて作業します。

その自由に置かれたソースの場所からかんたんにコマンドを実行するためにPATHはあります。

環境変数にはOS全体で使うシステム環境変数と、特定のユーザーしか使えないユーザー環境変数があります。

システム環境変数はすべてのユーザーが使うことができます。

環境変数を参照するときWindowsでは

%PATH%

Mac, Linux, Unixでは

$PATH

というルールがあります。

Mac, Linuxのパス設定

PATHの設定の方法はWindowsとそれ以外に分かれます。

じつはmacOSはUnixをもとに開発されました。LinuxもUnixに影響されてつくられたOSなのでとても似ています。

だからMacとLinuxは同じ作業になります。

Linuxの名前の由来は『like a Unix(Unixのような)』です。Unixのバッタモンとして始まって、いつのまにか本家のUnixを超えるほど広がっていきました。

MacとRedhat系LinuxのPATH設定

MacとRedhat系Linux(CentOS, Fedoraなど)は内部でbashというコマンドの集まりでできています。

PATHの設定の方法はbashのルールにしたがいます。編集するファイルはひとつで .bash_profile です。

.bash_profileは、rootユーザーとそれぞれのユーザーのホームディレクトリにある隠しファイルです。

隠しファイルは lsコマンドのaオプションをつけないと見えません。

rootユーザーの .bash_profile はシステム環境変数でそのほかのユーザーのファイルがユーザー環境変数の設定です。

rootユーザーのファイルはセキュリティを考えるとほとんど使いません。ユーザー環境変数に追加しましょう。

.bash_profile編集前
PATH=$PATH:$HOME/.local/bin:$HOME/bin
export PATH

.bash_profileにはすでにこのようなかんじで定義されています。

PATH=$PATH:

は、

すでに定義されているPATHに追加する

という意味で、コロン(:)は、区切り文字です。

追加するときはもともとあったものを残して追加します。

元々あったものを削除しないように注意してください。なにかしら異常が発生するアプリケーションが出てきます。

.bash_profile編集後
PATH=$PATH:$HOME/.local/bin:$HOME/bin:$HOME/shell

"PATH=$PATH:"は、システム環境変数をユーザー環境変数にコピーしています。

そのうしろから書いてあるものがユーザー環境変数オリジナルです。

ファイルの編集はこれだけです。最後に編集した内容をOSに反映させます。

.bash_profileの更新
source ~/.bash_profile

sourceコマンドを実行しなくても、ターミナルからログインしなおすだけで反映します。

ただ、sourceコマンドを実行するとターミナルの再ログインはいりません。

Debian系Linux, UnixのPATH設定

Debian系Linux(Ubuntuなど)やUnixは、デフォルトのシェルがbashではありません。

なので、編集するファイルが.bash_profileではありません。.profileになります。

もうひとつ違いがあるとすれば、PATHの定義をダブルクォーテーション(")で囲うことくらいです。

.profileのPATH定義
PATH="$PATH:$HOME/.local/bin:$HOME/bin"

bashと同じように『"』で囲わないものもあります。このあたりのルールはもとの定義に合わせてください。

あとはsourceコマンドで .profile を更新して終わりです。

.profileの更新
source ~/.profile

WindowsのPATH設定

WindowsはほかのOSと比べて独自の進化をしているので、同じような作業になりません。

Windowsはデスクトップで作業したほうが早いです。というかコマンドで作業をする人はいないです。

まずは、環境変数の編集画面を開きます。

PC(旧マイコンピュータ)の右クリック -> プロパティを選びます。

PC(旧コンピュータ)image
windows コンパネ システム image
コントロールパネル -> システム

システムのウィンドウが表示されました。これは、コントロールパネル -> システムでも表示できます。

次に左の『システムの詳細設定』を選びます。

windows システムのプロパティ image
Windowsシステムプロパティ

『詳細設定』タブの『環境変数』ボタンを押します。

Windowsの環境変数リスト

環境変数のウィンドウが出ました。

ユーザ環境変数のPathをダブルクリックするか、Pathを選んで編集ボタンを押します。

環境変数 編集 image
Windowsの環境変数編集

新規ボタンを押してパスを入力すると新しいパスが追加できます。

最後にOKボタンを押して終了してください。

Windowsでの作業は以上です。

昔はPCの再起動が必要でしたが、いまは不要です。コマンドプロンプトを開きなおしたら『PATHが通されて』います。

Windowsだけちょっと違うのがよく見るとわかります。

  • 変数名がPATHじゃなくてPath
  • 区切り文字がコロン(:)じゃなくてセミコロン(;)

まとめ

PATHの通し方はかんたんです。

Windowsとそれ以外

の2つの方法を覚えておけば、だいたいのOSで作業できます。

それでも、ときおり忘れてしまうぼくが言うのもなんですが...

この記事を一番必要としているのはぼく自身です。

(ごめんなさい。)

SNSでも記事を配信しています。
コメントを残す

*

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

top
この記事を気に入ったらぜひシェアも!!