どのようにパスにディレクトリを追加するには?

にディレクトリを追加するにはどうすればよいですか $PATH Ubuntuでは、変更を永続的にしますか?

~/を使用します。PATH PATHを設定するプロファイル

で設定されたパス .bash_profile bashログインシェルでのみ設定されます(bash -l).あなたのパスを入れた場合 .profile それはあなたの完全なデスクトップセッションで利用できるようになります。 それはmetacityでさえそれを使用することを意味します。

例えば ~/.profile:

if [ -d "$HOME/bin" ] ; then  PATH="$PATH:$HOME/bin"fi

ところで、プロセスの環境を調べることで、プロセスのPATH変数を確認できます /proc/[pid]/environ ([pid]をからの番号に置き換えます ps axf). 例えば、使用します。 grep -z "^PATH" /proc/[pid]/environ

メモ:

bash ログインシェルが解析しないので .profile いずれかの場合 .bash_profile または .bash_login 存在する。 から man bash :

それは~/を探します。bash_profile,~/.bash_login、および~/。プロファイルは、その順序で、存在し、読み取り可能な最初のコマンドからコマンドを読み取り、実行します。

を参照してください 以下の回答 についての情報のため .pam_environment、または .bashrc 対話的な非ログインシェルの場合、またはスクリプトを入れてすべてのユーザーの値をグローバルに設定します /etc/profile.d/ または使用 /etc/X11/Xsession.d/ 表示マネージャセッションに影響を与えます。

編集 .bashrc ホームディレクトリに次の行を追加します:

export PATH="/path/to/dir:$PATH"

あなたの源に必要があります .bashrc または、変更を有効にするためにログアウト/ログイン(または端末を再起動)します。 ソースにあなたの .bashrc、単にタイプ

$ source ~/.bashrc

永久的な定義するための推奨される場所, システム全体 すべてのユーザーに適用される環境変数は次のとおりです:

/etc/environment

(これはデフォルトの場所です PATH が定義されている)

これは、デスクトップまたはコンソール、gnome-terminalまたはTTY、rainまたはshineで動作します。)

  • 編集するには、ターミナルを開き、次のように入力します:

    sudoedit /etc/environment

    (または、ファイルを使用して開きます sudo お気に入りのテキストエディタで)

再起動せずに動作させるには、次を実行します . /etc/environment または source /etc/environment. このファイルは単純なスクリプトであるため、実行され、新しいパスが割り当てられます。 PATH 環境変数。 実行を確認するには env を参照してください PATH リスト内の値。

関連:

私はUbuntuの標準的な方法は次のとおりだと思います:

  • 下に新しいファイルを作成します /etc/profile.d/

    sudo vi /etc/profile.d/SCRIPT_NAME.sh
  • そこに追加:

    export PATH="YOUR_PATH_WITHOUT_TRAILING_SLASH:$PATH"
  • 実行権限を与えます

    sudo chmod a+x /etc/profile.d/SCRIPT_NAME.sh

GUIでより快適な完全な初心者(私のような)のために:

  1. あなたのを開けて下さい $HOME フォルダ。
  2. に行く ビュー rarr(r); 隠しファイルを表示 または押して下さい Ctrl + H.
  3. 上で右クリック .profile をクリックすると、 テキストエディタで開く.
  4. 下にスクロールして追加します PATH="$PATH:/my/path/foo".
  5. 保存します。
  6. ログアウトして再度ログインして変更を適用します(Ubuntuに実際にロードさせます .profile).

特定のユーザーのみが使用できる永続的な環境変数の場合。 私はUbuntuの公式文書を強くお勧めします。

https://help.ubuntu.com/community/EnvironmentVariables

上記の文書を参照して、私は私の設定をしました Android SDKパス-ツール によって:

  1. 作成 ~/.pam_environment ホームディレクトリ内のファイル。
  2. その内容は PATH DEFAULT=${PATH}:~/android-sdk-linux/tools.
  3. 追加のカスタムユーザーパスは、パスを次のように区切ることで追加できます コロン(:).
  4. これには以下が必要です 再ログイン これは、ログアウトしてデスクトップ環境にログインする必要があることを意味します。

その行をあなたの中に入れてください ~/.bashrc ファイル。

ターミナルを開くたびにソースが取得されます

編集:以下のコメントに基づいて、すべてのシェルに適用されるより一般的な設定(ヒットしたときを含む Alt-F2 Unity)では、次の行を追加します。 ~/.profile ファイル。 パスはあなたのパスに二度追加されるので、おそらく両方を行うべきではありません PATH 端末を開いた場合の環境。

システム全体に設定するには、次の行を追加します export PATH=/path/you're/adding:$PATH の最後に /etc/profile.

ログインしているユーザーのみのディレクトリを追加するには、同じ行を次の行に追加します ~/.bash_profile.

それを追加します。bashrcは動作しますが、path変数を設定するより伝統的な方法があると思います。次の行を追加してbash_profile。

PATH=$PATH:/my/path/fooexport PATH

によると このスレッド Ubuntuの動作はRedHatやclonesとはわずかに異なるように見えます。

ターミナル内, cdthe_directory_you_want_to_add_in_the_path

echo "export PATH=$(pwd):\${PATH}" >> ~/.bashrc

これは私の考えではありませんでした。 私はこれでパスをエクスポートするには、この方法を見つけました ブログはこちら.

EnvironmentVariables - Community Help Wiki あなたが知る必要があるすべてがあります。 ここでの入力の多くが間違っているか、少なくとも方法が提案されていないことがわかりました。 これは、あなたがそれをやっている理由に基づいて環境変数を変更する場所と、すべてを台無しにすることなくそれを正確に行う方法を理解できる だから、長い間、すべての魚のためのおかげで!