ホームページ  >  記事  >  運用・保守  >  Linux の環境変数はどのファイルにありますか?

Linux の環境変数はどのファイルにありますか?

青灯夜游
青灯夜游オリジナル
2022-06-10 19:02:0015233ブラウズ

Linux には、環境変数を含む複数の設定ファイルがあります: 1. "/etc/profile" ファイル。このファイルに設定された環境変数は、システムにログインするすべてのユーザーに適用されます。2. " /etc /bashrc"、このファイルに設定されている環境変数を変更すると、すべてのユーザーが使用する bash シェルに影響します。 3. "/etc/environment"、このファイルには、システム操作に関連するがユーザーには関係しない環境変数が含まれます。 4. "~/.profile"; 5. "~/.bashrc"。

Linux の環境変数はどのファイルにありますか?

#このチュートリアルの動作環境: linux7.3 システム、Dell G3 コンピューター。

1. 環境変数の概要:

Linux システムでは、環境変数は次のとおりシステム レベルの環境変数に大別できます。それらの異なるスコープ、およびユーザーレベルの環境変数。

  • システム レベルの環境変数: システムにログインするすべてのユーザーは、システム レベルの環境変数を読み取ることができます。
  • ユーザー レベルの環境変数: システムにログインする各ユーザーは、自分のユーザーレベルの環境変数のみを読み取ることができます;

当然、環境変数の構成ファイルもそれに応じてシステムレベルの環境変数に分割されます。 . そしてユーザーレベル。

2. システム レベル:

1./etc/profile

から開始します。システム 最初のユーザーがログインしたときに実行され、/etc/profile.d ディレクトリーの構成ファイルからシェル設定を収集します。このファイルを使用して構成された環境変数は、システムにログインするすべてのユーザーに適用されます。

ヒント: Linux システムでは、次のコマンドを使用して、構成ファイルをすぐに有効にします。

  source /etc/profile
  echo $PATH

2./etc/bashrc (Ubuntu および Debian では /etc/bash.bashrc)

bash シェル内このファイルを開いたときに実行されると、このファイルに設定されている環境変数を変更すると、すべてのユーザーが使用する bash シェルに影響します。

注: ここでの bash シェルにはさまざまなカテゴリがあり、カテゴリごとに使用される環境変数設定ファイルも異なります。

一般に、非ログイン シェルはプロファイル ファイルを実行しません。また、非対話型シェル モードは bashrc ファイルを実行しません。

3, /etc/environment

は、システムの起動時に実行されます。これは、ユーザーには関係なく、システムの動作に関連する環境変数を構成するために使用されます。このファイルの設定. 環境変数はグローバル環境に影響を与えます。

3. ユーザー レベル:

1、~/.profile (最初に推奨)

~/.profile: Bourne 互換のログイン シェルによって実行されます。

ユーザーのログイン時に実行されます。各ユーザーは、このファイルを使用して、自分専用のシェル情報を構成できます。

2、~/.bashrc

~/.bashrc: 非ログイン シェルの場合は bash(1) によって実行されます。

このファイルは、ユーザーがログインするとき、および新しいシェルが開かれるたびに読み取られます。シェルが開かれるたびに、ユーザー固有の環境変数をここで構成することはお勧めできません。ファイルが読み取られます。一度読み込むと効率が確実に変わります。
有効性: ソース
bashrc とプロファイルの違い
上記の英語の説明から、bashrc とプロファイルの違いは次のとおりであることがわかります:

注: 通常は次のように変更します。 bashrc、一部の Linux ディストリビューションにはプロファイル ファイルがない場合があります;

    • 1. bashrc はシステムの起動後に自動的に実行されます。
    • 2. プロファイルは、ユーザーのログイン後に実行されます。
    • 3. 設定後、source bashrc コマンドを使用して bashrc を更新するか、source profile コマンドを使用してプロファイルを更新できます。
    • 4. /etc/profile に設定された変数 (グローバル) はすべてのユーザーに影響を与えることができますが、~/.bashrc に設定された変数 (ローカル) は /etc/profile. 変数内の変数のみを継承できます。 「父と子」の関係。

#3、~/.bash_profile または ~./bash_login

#~/.bash_profile または ~ 。 /bash_login - これらのファイルのいずれかが存在する場合、bash は、ログイン シェルとして起動されるときに、「~/.profile」

ではなく、そのファイルを実行します (Bash は、「~/.bash_login 」よりも「~/.bash_profile」を優先します)。 ).
ただし、これらのファイルはデフォルトではグラフィカル セッションに影響を与えません。

上記は、ubuntu 公式 Web サイトで提供されている ~/.bash_profile および ~./bash_login に関する説明を中国語に翻訳したものです:
~/.bash_profile または ~./bash_login -
いずれかのファイル存在する場合、ログイン シェルの開始時に、Bash は ~/.profile の代わりにファイルを実行します;
両方のファイルが存在する場合、Bash は ~/.bash_login の代わりに ~/.bash_profile を実行します ;
ただし、デフォルトでは、これらのファイルはグラフィカル セッションに影響を与えません。

4, ~/.bash_logout

システムを終了する (bash シェルを終了する) たびに、このファイルを実行します。

注: Linux システムでは、$VARIABLE_NAME を使用して環境変数にアクセスし、複数の環境変数は「:」で区切られます。Windows システムでは、%VARIABLE_NAME% を使用して環境変数にアクセスし、複数の環境変数は ; で区切られます。

関連する推奨事項: 「Linux ビデオ チュートリアル

以上がLinux の環境変数はどのファイルにありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。