LinuxのPATH変数は、コマンドの実行時に実行可能ファイルを探すディレクトリへのパスを格納します。
[email protected]:~$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
ご覧のとおり、 PATHは、コロン(:)で区切られたいくつかのディレクトリ(/ usr / local / sbin、/ usr / binなど)で構成されています 。
システム内のどこからでもコマンドとして実行可能ファイルを実行する場合は、その場所をPATH変数に追加する必要があります。
これは、開発環境をセットアップするときによく見られます。たとえば、JavaとMavenをダウンロードしてインストールしたとします。プログラムを正しく機能させるには、PATHでMavenとJavaのバイナリの場所を指定する必要があります。
このクイックチュートリアルは、LinuxでのPATHの設定に関するものです。手順とは別に、PATHを処理する際に注意する必要があることについても説明します。
LinuxのPATHにディレクトリを追加する
LinuxでPATH変数に新しいディレクトリを追加するプロセスは、基本的に次のとおりです。
export PATH=$PATH:your_directory
your_directory
絶対パスです 関連するディレクトリに。
たとえば、Mavenをダウンロードしてホームディレクトリに解凍し、そのbinディレクトリをPATHに追加するとします。このbinディレクトリの絶対パスが/home/abhishek/maven/apache-maven-3.8.0/binであると仮定します。
すべきことは次のとおりです。
export PATH =$ PATH:/home/abhishek/maven/apache-maven-3.8.0/bin
export PATH=$PATH:/home/abhishek/maven/apache-maven-3.8.0/bin
注意事項 ここ:
- 変数名の前の$は、その値を参照していることを意味します。 PATHは変数名、$PATHは変数PATHの値です。
- =の左側にあるPATHで$を使用しないでください
- 前後にスペースがあってはなりません=
- PATH内のディレクトリはコロンで区切られているため、$ PATHの後に:を含めることを忘れないでください。
- コロン(:)の前後にスペースがあってはなりません。
新しい値でPATHを設定したら、PATHが正しく更新されていることを確認してください。
[email protected]:~$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/home/abhishek/maven/apache-maven-3.8.0/bin
PATHを変更したコマンドまたはスクリプトを実行することをお勧めします。これにより、PATHが正しく設定されているかどうかを確認できます。
PATHへの変更を永続的にする
目的のディレクトリをPATH変数に追加しましたが、変更は一時的なものです。ターミナルを終了するか、セッションを終了するか、システムからログアウトすると、PATHが元に戻り、変更が失われます。
PATH変数への変更を自分で永続的にしたい場合は、Bashシェルを使用していると仮定して、ホームディレクトリの.bashrcファイルに追加できます。
このタスクには、NanoやVimなどのテキストエディタを使用できます。
nano ~/.bashrc
変更したPATH変数をLinuxシステムのすべてのユーザーが利用できるようにする場合は、エクスポートを/ etc/profileファイルに追加できます。これは、システム管理者であり、カスタムパスを使用してシステムを構成している場合に適しています。
ボーナスのヒント:PATHではディレクトリが優先されます
PATH変数にはいくつかのディレクトリがあります。実行可能ファイル/コマンドを実行すると、システムはPATH変数に記載されているのと同じ順序でディレクトリを調べます。
/ usr / local/sbinが/usr/ binの前にある場合、実行可能ファイルは最初に/ usr / local/sbinで検索されます。実行可能ファイルが見つかった場合、検索は終了し、実行可能ファイルが実行されます。
これが、PATH内の他のすべての前に追加のディレクトリが追加されるいくつかの例を見つける理由です:
export PATH=your_directory:$PATH
追加のディレクトリを他のすべての前に検索する必要があると思われる場合は、$ PATHの前に追加する必要があります。それ以外の場合は、$PATHの後に追加します。
十分に明確でしたか?
私は必要な詳細で物事を説明しようとしましたが、詳細にはあまり深く入りません。座ってトピックを明確にしますか、それとも以前より混乱していますか?それでも疑問がある場合は、コメントでお知らせください。