LoginSignup
0
0

More than 1 year has passed since last update.

インタラクティブシェルとログインシェル

Last updated at Posted at 2021-11-29

※調査することになった理由
umaskでなんで、_bashrcが実行されないのかわからなかった。
原因判明:bashrcがログインシェルの場合、はじいている。。。
shopt -q login_shell
だからif文処理に入らないんだ。。多分。
※.bash_profileは実行されているように見えるのに。
※.bash_profileには、.bashrcがあれば実行するという記載があるのに。。。

ソースコードを追いかけているがさっぱりわかんない。

どうもインタラクティブシェルとログインシェルという概念があるみたい。

まずは手元の環境から整理します。

SSH接続の結果
ログインシェル かつ インタラクティブシェル

shopt login_shell
login_shell     on
echo $-
himBH

GUI接続の結果
ノンログインシェル かつ インタラクティブシェル

shopt login_shell
login_shell     off
echo $-
himBH

仮説だが、ログインシェルの場合、.bashrcはなぜか実行されない。。。
原因不明。

GUIのノンログインシェルの場合は実行されているのを確認。
ログインシェル→bashコマンドでノンログインモードに変更しても.bashrcが実行されることは確認しました。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0