web-dev-qa-db-ja.com

すべてのターミナルセッションで変更を使用できるようにPATHを変更するにはどうすればよいですか

検索パスを検索するためのディレクトリを追加したい。 PATH環境変数を変更する必要があることは知っています。ただし、変更を永続的にして、開いているすべてのターミナル(bash)ウィンドウに対して常に有効になるようにします。

https://help.ubuntu.com/community/EnvironmentVariables には、混乱を招き、競合する可能性がある情報のオーバーロードがあります。

Ubuntu 10.04を使用しています。 /usr/local/fooPATHに追加するとします。どのファイル(.bashrc.profile.bash_loginなど)を変更する必要があり、新しい行はどのように表示されますか?

54
Joshua Flanagan

次のコマンドは、現在のパスにパスを追加します。

export PATH=$PATH:/my/custom/path

セットアップで毎回このコマンドを実行したい場合は、それを配置できる場所がいくつかあります。ログインすると、次のスクリプトがこの順序で実行されます。

/etc/profile      (which starts by loading everything in /etc/profile.d)
~/.profile        (which starts by loading ~/.bashrc if you are running bash)

  • ~/.profileは、~/.bash_profileおよび~/.bash_loginが存在しない場合にのみロードされます。そうでなければ、少なくともbashが代わりにそれらをロードします。 bash固有のスクリプトではなく、.profileを使用することをお勧めします。したがって、これらの試みで.bash_loginを作成した場合、今すぐ削除してください。

  • ~/.bashrcは、対話型セッションを実行している場合にのみロードされます。 (実際に何かを入力できるプロンプトのあるもの)。

  • ~/.bashrcが何度も何度もロードされます新しいターミナルを開くたびに。そのため、gnome-terminalの新しいタブ、新しい仮想ターミナルなどです。したがって、再度ログインしなくても、新しいシェルを開くたびに.bashrcがロードされます(したがって、環境がリセットされます)。

  • By風のようなものは本当に.profileに入るべきです(そうでなければ動作しません;-)

  • パスのようなものは、インタラクティブセッションの外で動作させる場合は、.profileに入れる必要があります。 (を押すと言う Alt+F2 GNOMEで)

68
Ralf

~/.profileを変更することで動作するようになりました

〜/ binをパスに追加するのは悪い例のようです。ディレクトリが存在する場合、〜/ .profileにそれを自動的に行うコードが既に存在するためです。

今後のすべてのセッションのパスにusr/local/fooディレクトリを追加するには、.profileの最後に次の行を追加/編集します。

export PATH=$PATH:/usr/local/foo

ただし、これを有効にするには、ログアウトして再度ログインする必要がありました(単にターミナルウィンドウを閉じて新しいウィンドウを開くだけでは機能しませんでした)。

13
Joshua Flanagan

.profileをリロードし、ログアウト/ログインせずに変更を有効にするには、次を実行します:

source ~/.profile
4
Bruno Freitas

/etc/environmentにパスを追加できますが、シェルの展開は機能しないことに注意してください。変数は、入力した文字通りに設定されます。

3
sagarchalise

Ohmyzshがある場合は、ターミナルを介してホームディレクトリに移動し、次のように入力します。

nano .zshrc

ファイルの最後に入力します

export PATH = "$ HOME/directory_to_include_in_path /:$ PATH"

最後に端末を再起動します。私のために働いた。これがお役に立てば幸いです。

0
Vallie

.bashrcディレクトリ内の$HOMEファイルを変更できます。

このファイルの最後に、次の行を追加します。

export PATH="$HOME/directory_to_include_in_path/:$PATH"

次の行を含む.profileディレクトリの$HOMEファイルも変更できます。

PATH="$HOME/directory_to_include_in_path/:$PATH"

これは私のために働いた。

0
Denner Vieira