私のローカルUbuntuコンピュータで端末を開くとソースコードがインポートされますが、.bashrc
SSH経由で接続するとソースコードがインポートされることがわかりました.bash_profile
。ローカルで作業するときに2つのファイルソースを持つように.bashrc
ソースコードに1行を追加しました。.bash_profile
リモートでコンピュータにアクセスするときと同じ動作が必要です。もちろん、単に入力すると無限ループに陥ります.bashrc
。.bash_profile
これを設定する正しい方法は何ですか?
答え1
コマンドを使用できますshopt login_shell
。シェルが非ログインシェルの場合は印刷されlogin_shell off
、ログインシェルの場合は印刷されますlogin_shell on
。
.bash_profile
対話型ログインモードで起動するか、SSH経由でアクセスするたびにbashから取得します。したがって、.bash_profile
次のようにif条件を追加できます。
if [ "$(shopt login_shell | cut -f2)" = "on" ]
then
source .bashrc
fi
.bashrc
端末でbashを起動するたびにソースコードを取得するので、if条件を追加できます。.bashrc
if [ "$(shopt login_shell | cut -f2)" = "off" ]
then
source .bash_profile
fi