Linux(RedHat) `sudo su -l <> `設定ファイルを提供していません

Linux(RedHat) `sudo su -l <> `設定ファイルを提供していません

<<user_acct>>前述のように、基本設定ファイルの読み込みに問題がありますsudo su -l <<user_acct>>

.profile

if [ -r "${HOME}/.profile.custom" ]; then
    . "${HOME}/.profile.custom"
fi

私が読んだことに基づいて(例えば、同様の答え)一つ)、-lログインシェルをトリガーしなければならず、fetchが実行されましたが、に設定されている.profile環境変数が存在しないため動作しないようです(一方、.profile.custom実行すると. .profile表示されます)。

修正された質問:なぜ何かこの問題を解決する方法

ベストアンサー1

ログインシェルの場合、bashはそれを最初に探します~/.bash_profile。見つからない場合は検索します~/.bash_login。見つからない場合は検索します~/.profile。とにかく、ログインシェルがインタラクティブであっても、bashはそれを読みません~/.bashrc

次の事項に従い、次のことを~/.bash_profile行わないことをお勧めします~/.bash_login

if [ -e ~/.profile ]; then . ~/.profile; fi
case $- in *i*) if [ -e ~/.bashrc ]; then . ~/.bashrc; fi;; esac

これにより、.profileログインシェルがbashか他のshバリアントであるかに関係なくロードされ、シェルがログインシェルであるかどうかにかかわら.bashrcずbashによってロードされます。

おすすめ記事