これは簡単な作業のように聞こえますが、これまではこれを達成できませんでした。
Debian 11で(グラフィックス)ログインが発生するたびに条件付きで(たとえば、$ XDG_DEBUG == 1の場合...)、このユーザーの特定の環境変数を設定したいと思います。環境変数は、後でユーザーが呼び出すすべての端末(たとえば、および)に設定する必要がbash
ありzsh
ます。Gnome Desktop
Mate Desktop
重要:環境変数はログインするたびに設定する必要があるため、ログイン、ログアウト、再ログインの順序については2回設定されます。再起動は必要ありません。
この目標を達成する方法は?
ベストアンサー1
ホームディレクトリのファイルにこれらの変数を追加します.bashrc
。これらのファイル(他のファイル)は、.zshrc
シェルが起動するたびに自動的にロードされます。bash
zsh
よりグローバルな設定が必要な場合は、独自の名前.my_envvar
(または必要な名前)を作成し、*rc
両方のファイルに次のコードを追加してください。
if [ -e $HOME/.my_envar ] ; then
source $HOME/.my_envar
fi
自分だけでなくすべてのユーザーに対してこれらの変数を設定するには、にアクセスしてディレクトリが/etc
存在することを確認します/etc/profile.d
。変数を含むファイルを追加します。このファイルはここからロードされます/etc/profile
(その中に特別なループがあります)。
または、オペレーティングシステムが十分にスマートでない場合は、/etc/profile
特殊変数を直接追加できます。または自分自身の/etc/profile.d
。
しかし、このような変数XDG_DEBUG
(またはデバッグ変数)の場合は、デバッグしたいアプリケーションを実行する特別なシェルスクリプトで設定するのが最善です。グローバルに設定しないでください。そうしないと、複数のアプリケーションのデバッグ情報に陥ります。