Last Update 2022/06/05
--noprofile オプション
/etc/profile、 ~/.bash_profile、 ~/.bash_login、 ~/.profile を起動時に読み込まない
テスト概要
--noprofile オプションの有無による読み込みファイルの違いを比較
-l オプション使用時の --noprofile オプション の有無による読み込みファイルの違いを比較
実行環境
GNU bash, version 5.1.16
コード例・出力内容中の表記
・実行例中の太字表記部分は、コマンドなどの入力された文字列を示します。
・「︙」や「...」の着色省略表記は、 実際のソースコードや出力内容などを省略加工した部分を示します。
・「︙」や「...」の着色省略表記は、 実際のソースコードや出力内容などを省略加工した部分を示します。
bash関連ファイルの設定(テスト用)
/etc/profile
# ********** /etc/profile ここから **********
echo "[etc_profile]"
# ********** /etc/profile ここまで **********
~/.bash_login
# ********** ~/.bash_login ここから **********
echo "[bash_login]"
# ********** ~/.bash_login ここまで **********
~/.bash_logout
# ********** ~/.bash_logout ここから **********
echo "[bash_logout]"
# ********** ~/.bash_logout ここまで **********
~/.bash_profile
# ********** ~/.bash_profile ここから **********
echo "[bash_profile]"
# ********** ~/.bash_profile ここまで **********
~/.bashrc
# ********** ~/.bashrc ここから **********
echo "[bashrc]"
# ********** ~/.bashrc ここまで **********
~/.profile
# ********** ~/.profile ここから **********
echo "[profile]"
# ********** ~/.profile ここまで **********
--noprofile オプションの有無による読み込みファイルの違いを比較
--noprofile オプションを使用せずにbashを起動
-bash-5.1$ bash
[bashrc] <--- ~/.bashrcの実行による出力
bash-5.1$ exit
exit
-bash-5.1$
--noprofile オプションを使用してbashを起動
-bash-5.1$ bash --noprofile
[bashrc] <--- ~/.bashrcの実行による出力
bash-5.1$ exit
exit
-bash-5.1$ ~/.bashrcへのこのオプションの影響は無し
-l オプション使用時の --noprofile オプション の有無による読み込みファイルの違いを比較
--noprofile オプションを使用せずにbashを起動
-bash-5.1$ bash -l
[etc_profile] <--- /etc/profileの実行による出力
[bash_profile] <--- ~/.bash_profileの実行による出力
bash-5.1$ exit
logout
[bash_logout] <--- ~/.bash_logoutの実行による出力
-bash-5.1$
--noprofile オプションを使用してbashを起動
-bash-5.1$ bash --noprofile -l
bash-5.1$ exit
logout
[bash_logout] <--- ~/.bash_logoutの実行による出力
-bash-5.1$ ログイン時のファイルの読み込み・実行は無し