混乱するデータサイエンティストのためのPATH変数:管理方法
Managing PATH Variables for Data Scientists in Chaos
WindowsとUnix系システムの両方でPATHを理解し、それにパスを追加する方法を理解する
時々、StackOverflowの人たちは自分たちの頭の上にコンパスがくっついているように感じます。彼らはいつもPATHを見つけるようです。
私はそれがあなたのPATHにないと思います。あなたはPATHをめちゃくちゃにしたかもしれません。実行可能ファイルがPATHに含まれているか確認してください。
「私は、PATHって何?」私は、こんな文を読むたびにいつも赤面しながら言っていました。今では、私はデータサイエンスの旅を始めてから3年以上が経ち、それが何なのか完全に理解しています。ほぼ。
そして、この記事では、WindowsとUnix系システムの両方でこの混乱する環境変数を管理する方法を教えたいと思います。
- 警察改革のためのデータ合成のイノベーションを入力し、現金を獲得してください
- データサイエンスと機械学習の違いは何ですか?
- 近接度とコミュニティ:PythonとNetworkXによるソーシャルネットワークの分析—Part 3
さあ、始めましょう!
コマンドにもパスがあります
あなたが最もよく使うターミナルコマンドは何ですか?疑いようもなく、私のものはgit
です。私は記事を書きながら頻繁にコミットを行うからです。
私が質問している理由は、ほとんどのターミナルコマンドにもオペレーティングシステム内に独自のパスがあるからです。そのパスを見つけるには、which valid_command_name
を実行するだけです。たとえば、ここに私のgit
インスタンスのパスがあります。
$ which git # In windows, use `where`/usr/bin/git
上記は絶対パスであることに気づくかもしれません。しかし、それは何のためのパスなのでしょうか?
実行可能バイナリファイルです!(Windowsの場合、.exe
ファイルパスが表示されます)
それは、git
コマンドが実行されたときに何をするかに関する指示を含んでいます。すべてのターミナルコマンドは、特定のタスクを実行する形式のシェルスクリプトまたは実行可能ファイルです。
たとえば、clear
、cat
、touch
などの組み込みターミナルコマンドにwhich
コマンドを試してみると、絶対パス(which
コマンド自体も含む)が表示されます。
実行可能ファイルのパスを取得したら、次のように完全なパスでコマンドを実行できます。
$ /usr/bin/git status -s # the same as `git status -s`M 2023/6_june/7_path/dump.ipynb
そして、それは機能します!しかし、ここで興味深い点は、どのようにしてgit
という単語が絶対パス/usr/bin/git
と同等になるのでしょうか?git
はただの単語です。
あなたのコンピュータがどのようにしてたくさんのコマンドの完全な実行可能ファイルのパスを知り、たった1つのキーワードで実行できるのか、どうやって知っているのでしょうか?
(これがユーレカの瞬間です!)
PATH変数を使用することによって!
さあ、PATHを見てみましょう!
PATHは、絶対パスを保持する変数であり、ほとんどのターミナルコマンド、組み込みのものであろうとユーザーがインストールしたものであろうと、ほとんどのターミナルコマンドを実行するために必要です。
conda env create
などの任意のコマンドを入力すると、オペレーティングシステムはPATH変数内にあるconda
という実行可能ファイルを探します。実行可能ファイルが見つからない場合、command not found
エラーが返されます。
$ unknown_commandunknown_command: command not found
PATH内のパスを一度に印刷することができます。
Unix系システムの場合:
$ echo $PATH/home/bexgboost/.local/bin:/home/bexgboost/anaconda3/bin:...
Windowsの場合:
$ ECHO %PATH%C:\Python39\Scripts\;C:\Python39\;C:\WINDOWS\system32;...
PATH内の各パスは、Unixではコロン、Windowsではセミコロンで区切られています。
これらのパスのおかげで、システムにインストールされた実行可能ファイルの数十の絶対パスを覚える必要がありません。
WindowsでのPATHの操作
PATH変数の編集は、Unix系システムと頑固なWindowsでは異なります。このセクションは、WindowsでPATH変数を管理する方法についてです。
PATHで最も一般的な操作は、新しいパスを追加することです。たとえば、C:\Users\user\Desktop\articles
ディレクトリをPATHに追加するには、管理者権限でコマンドプロンプトまたはPowerShellを開き、次のコマンドを実行します。
$ setx PATH "%PATH%;C:\Users\user\Desktop\articles"
しかし、setx
コマンドは慎重に行わないとPATHが大きく狂ってしまう可能性があるため、Windowsで安全な方法はシステムプロパティウィンドウを介してパスを追加することです。
PATHに新しいパスを追加する手順とGIFを以下に示します。
- 「システムの詳細設定を編集する」を検索して、最初の結果をクリックします。
- ポップアップウィンドウから「環境変数」をクリックします。
- 新しいパスが現在のユーザーまたはシステム全体に追加されるかを決定します。
- 「ユーザーの環境変数」または「システム環境変数」の下にある「Path」変数までスクロールします。
- それを選択して編集をクリックします。
- 新しいポップアップウィンドウで、「新規」をクリックし、新しいパスを貼り付けます。たとえば、
C:\Users\user\Desktop\articles
- OKを3回クリックします。
最終ポップアップウィンドウから、パスの削除や順序の変更もできます(順序の重要性に関する最終セクションを参照してください)。
UnixでのPATHの操作
Unix系システムでは、新しいパスをPATHに追加するのは簡単です。
たとえば、/home/bexgboost/articles
パスを追加するには、次のコマンドを実行するだけです。
$ export PATH="/home/bexgboost/articles:$PATH"
新しいパスはPATHの最初に追加されます。末尾に追加するには、$PATH
の場所を変更する必要があります。
$ export PATH="$PATH:/home/bexgboost/articles"
ただし、新しいパスは現在のターミナルセッションの期間だけ追加されます。PATH環境変数に永続的に追加するには、export
コマンドをシェル構成ファイルに追加する必要があります。
使用しているシェルに応じて、特定の構成ファイルが異なります。
- Bashの場合:
~/.bashrc
または~/.bash_profile
にexport
コマンドを追加します(.profile
についてはこちらを参照してください)。 - Zshの場合:
~/.zshrc
にexport
コマンドを追加します。 - Fishの場合:
~/.config/fish/config.fish
にexport
コマンドを追加します。
リストから自分自身を選んだら(ここでは.bash_profile
を選択します)、次のecho
コマンドを使用します。
$ echo 'export PATH="$PATH:/home/bexgboost/articles"' >> ~/.bash_profile
次に、source ~/.bash_profile
で構成ファイルを再読み込みして完了です。
パスの順序
PATH変数内のパスの順序は、コマンドやプログラムを実行するときにディレクトリが検索される優先順位を決定します。
ターミナルにコマンドを入力すると、オペレーティングシステムはPATH内の各パスを左から右に順番にチェックして実行可能ファイルを探します。複数のディレクトリに同じ名前の実行可能ファイルが含まれている場合、最初に見つかったものが使用されます。
例えば、システムに複数のPythonバージョンがある場合、PATH内の最も左側にあるPython実行ファイルがターミナルでpython
を実行する際に使用されます。
結論
データサイエンスやMLの世界では、ターミナルはしばしば見落とされがちです。代わりに、オンラインコースやブートキャンプはVSCodeやJupyterLabのような輝くIDEに初心者の注目を引きつけます。
しかし、いつか必ず訪れるのが、彼らが自分自身のマシン上で錆びついたシェルを開く時です。それが彼らがPATHで巨大な障壁にぶつかるときです。
この記事があなたがその障壁を粉々に砕くことを助けることを願っています。
お読みいただきありがとうございます!
この記事、そしてその奇妙な文体が好きですか?同じような記事に数十もアクセスできたらどうでしょうか?しかも、輝かしい、魅力的で機知に富んだ筆者(それは私です、という意味です:)から書かれたものです。
わずか4.99ドルの会員費で、私の物語だけでなく、VoAGIの最も優れた知識の宝庫にアクセスできます。そして、私の紹介リンクを使うと、私の仕事をサポートしてくれたことに対する私の超新星の感謝とバーチャルハイファイブを受け取ることができます。
私の紹介リンクでVoAGIに参加する – Bex T.
VoAGIのメンバーとして、あなたの会費の一部があなたが読んだ作家に送られ、あなたはすべての物語に完全アクセスできます…
ibexorigin.medium.com
We will continue to update VoAGI; if you have any questions or suggestions, please contact us!
Was this article helpful?
93 out of 132 found this helpful
Related articles