105.1基礎
対話的なログインBashを終了するとき、ユーザー固有の後処理を実行する。
Bashが終了時に読み込むファイルはどれか。
× 不正解
対話的ログインBashは終了時に~/.bash_logoutがあれば読み込む。端末初期化等の軽い後処理に使える。
詳細解説
正しい
~/.bash_logout対話的ログインシェルの終了時に読み込まれる。
正しい。対話的ログインシェルがexit等で終了するとき、存在すれば.bash_logoutを読み実行する。
誤り
~/.bashrc対話的非ログインBashの起動設定が中心である。
誤り。対話セッション開始時のaliasやprompt設定が中心で、ログアウト後処理の自動対象ではない。
誤り
~/.bash_profileログインBashの起動時に読まれる候補である。
誤り。ログイン時に環境を構築するファイルで、終了時に改めて読み込まれない。
誤り
~/.profileログイン時の初期化候補で、終了時ファイルではない。
誤り。.bash_profile等がない場合のログイン初期化候補であり、logout専用ではない。
実際に確かめる
一時的な検証環境で実行できる例です。
man bash | col -b | grep -A3 'When a login shell exits' | sed -n '1,5p'期待される結果
~/.bash_logoutを読み実行する説明理解のポイント
- ログインシェル終了時
- ~/.bash_logout
- 起動ファイルと区別
確認時の注意
- 確認環境: GNU Bash 5.2 / マニュアル参照
基礎のおさらい
用途
画面の消去や一時資格情報の後処理等に使えるが、失敗しても重要データを失わない設計にする。
強制終了
プロセスがSIGKILL等で終了すると、logoutファイルを実行する機会がない。
問題IDKP-105-616
確認環境GNU Bash 5.2 / マニュアル参照
最終技術確認2026-08-13
誤り・権利侵害を報告