Gnome端末セッションで環境変数を定義する方法は?

Gnome端末セッションで環境変数を定義する方法は?

Centos 7のユーザーログインプロセスを理解しようとしていますが、Gnomeターミナルセッション(Gnome 3.14.4)の環境変数がいつ/どのように定義されるかを調べようとすると、少し混乱します。

私が知っている限り... Gnome Terminalは、/etc/profile、~/.profile、または~/.bash_profileスクリプトにエクスポートした場合にのみ環境変数を定義します。

エクスポートしないと、set または printenv コマンドの出力には表示されません。 / etc / environmentファイルは例外です(ただし、シェルログインスクリプトではありません)。

私が見つけた唯一のことはこれをするようです。/etc/X11/xinit/xinitrc-commonファイルから〜/ .profileログインスクリプトをソーシングするとき...しかし、これはログインスクリプトにすぎません。

[ -r $HOME/.profile ] && . $HOME/.profile

これが ~/.profile スクリプトの変数を読み取る場合、.../etc/profile と ~/.bash_profile の変数をどのように読みますか?重要な場合は、「ログインスクリプトでコマンドを実行する」を選択していません。

ベストアンサー1

私はGnome Terminalが基本的にbashを実行していると思います(GNU Bourne Again SHell)。

実際には/etc/passwdであなたのアカウントで指定されたすべてのシェルを実行することができます。

起動時に bash は ~/.profile および ~/.bash_profile に移動するため、これらの変数が設定されます。

要約すると、Gnome Terminalを起動するとシェルが起動し、シェルはこれらのスクリプトを介して環境変数を設定します。

おすすめ記事