こんにちは、機械学習の講師をしている木下です!
みなさん、新しいプログラムを見たときに、「PATH を通してください」などとさらっと書かれている記事を見かけたことはないでしょうか?
実際やってみたものの、なにをやっているのか?、うまくできているのかわからない…、そんな感想を抱いた方も多いと思います。
今回は初学者がつまづきがちな PATH (パス)を通すとはなにか、誰でも理解できるように解説します。
ぜひこの機会にPATH を通すとはなにか理解していきましょう!
目次
動作環境
- OS: Windows11
PATH を通すとは?
PATH を通す目的
まずは PATH を通す目的を確認しておきましょう。
PATH を通す目的を一言で表すと
プログラムを簡単に(名称だけで)実行できるようにする
ことです。
プログラムは本来であれば、フルパスを指定しないと実行できません。フルパスとは、コンピュータの一番上のフォルダからプログラムが含まれているフォルダまでのすべての道筋のことです。
例えば、Python であれば以下のようなインストール先がフルパスとなります。
C:\Users\*****\AppData\Local\Programs\Python\Python310\python.exe
そのため、Python を起動してプログラミングを行う際には上記のようなパスを毎回指定して Python を起動する命令が必要になってしまいます。実は、デスクトップのアイコンをダブルクリックして、プログラムが起動するのは、裏側で上記のような命令をコンピュータに指示しています!
ただし、ターミナルから起動するときには、このフルパスを指示しないと動かず、毎回このコードを書くのは非常に面倒です。
そこで、PATH を通すことによって、これを特定の名前で実行できるようになるのです!実際にみなさんのターミナル上では以下のように打つだけで、Python が起動すると思います。これは PATH が通っているからこそできることなのです。
>python
--- 以下実行結果 ---
Python 3.9.7 (default, Sep 16 2021, 08:50:36)
[Clang 10.0.0 ] :: Anaconda, Inc. on darwin
Type "help", "copyright", "credits" or "license" for more information.
なぜ .exe としなくても起動できるのか?
PATH を通したら、python.exe と指定しなくとも、pythonで起動するようになりました。
これには理由があります。PATHEXT という環境変数のおかげです。
PATHEXT には、以下のような拡張子が記載されています。
.COM;.EXE;.BAT;.CMD;
プログラム名称に拡張子がない場合は、この PATHEXT が次のようなことを自動でしてくれます!
.EXEが存在するか調べて、存在するなら開いて終了。
.BATが存在するか調べて、存在するなら開いて終了。
.CMDが存在するか調べて、存在するなら開いて終了。
この PATHEXE と PATH の指定の組み合わせでターミナル上で python というコマンドが動いていることになります。
PATH が通っているか確認する方法
正しい PATH が通っているか、確認したいケースは非常に多くあります。Windows, Mac ではターミナル上で以下のうようなコマンドを実行すると簡単に確認することができます。
where プログラム名称
いくつかの例で確認してみましょう。
# 確認コマンド
C:\Users\*****>where anaconda
--- 以下実行結果 ---
C:\Users\*****\anaconda3\Scripts\anaconda.exe
ここで、Anaconda の PATH が表示されていれば、そこまでの道のりの PATH が通っており、コンピュータが正しく認識できていることになります。細かい PATH の通し方については、別記事で紹介します。
PATH が複数ある場合
次に Python の PATH を確認してみると以下のようになりました。
# 確認コマンド
C:\Users\*****>where python
--- 以下実行結果 ---
C:\Users\*****\anaconda3\python.exe
C:\Users\*****\AppData\Local\Programs\Python\Python310\python.exe
PATH が 2 つ存在することがわかります。このような場合は必ず上に表示されている PATH が採用されます。
不要なPATHを設定すると、思ったように動かないという場合がありますが、だいたいこれが原因であることが多いので、PATH の設定(システム環境変数)を見直してみてください。
PATH 確認の注意点
PATH を確認するときに、確認するときのコマンドには気をつけてください。例えば VSCode(Visual Studio Code) の PATH を確認したいときに以下のようなコマンドを実行するとうまくいきません。
# 確認コマンド
C:\Users\*****>where VS Code
--- 以下実行結果 ---
C:\Users\*****\AppData\Local\Programs\Microsoft VS Code\bin\code.cmd
情報: "VS" が見つかりませんでした。
これはスペース区切りで、プログラム名を入力してしまっているため、VS と Codeというそれぞれ単独の名称で探索した結果、情報: “〇〇” が見つかりませんでした。という表示がでます。
正しくは以下のように実行してみてください。
# 確認コマンド
C:\Users\*****>where Code
最後に
いかがでしたでしょうか。今回はそもそも PATH を通すとは一体何か、そしてどのように確認できるのかといった記事をまとめました。
なんとなく言葉を聞いたことがあるけど、理解できていなかった方はまず、プログラムの実行が円滑にできるように指定するものであると認識してください!
そして、すぐに PATH を確認できるようになっておくとエラー解決の際にとても役立つこと間違いなしです!
以上、プログラムなどを学習している方々のお力添えになれば幸いです!それでは、次回、具体的な PATH の通し方についての記事を書きますのでお楽しみに!!
(キカガク長期コース卒業生の記事をもとに執筆しています)
参考リンク
参考 Python 3.9.2 ドキュメント大人気コース「Python & 機械学習入門コース」が無料!
現在 e ラーニングプラットフォーム「キカガク」に無料登録すると、これまで多くの方にご受講いただいた、Python の基礎から機械学習の数学やプログラミングまでを学べる大人気コース「Python & 機械学習入門コース」が無料です。
好評である手書きの数学とハンズオン形式のプログラミングを通じて、初学者でも数学の理論から実装まで一から学習できます。また、動画で丁寧に解説しているため、迷うことなく最後まで継続して学習しやすいです。
Python の基礎から機械学習を学習したい方は、ぜひ教材の1つとしてご利用ください!