login shell
login shell
是当用户登录系统时启动的shell实例。通常,它会读取并执行特定的初始化脚本,为用户设置环境和其他任务。
特点
读取并执行/etc/profile
(对于所有用户)和~/.bash_profile
, ~/.bash_login
或~/.profile
(对于特定用户)。
通常用于设置环境变量,如PATH
,和其他会话初始化任务。
与非login shell的区别:
- 非login shell不会读取上述的初始化脚本,但可能会读取其它如
~/.bashrc
的脚本。 - 非login shell通常是在登录后在图形界面中打开终端窗口时启动的。
如何确定是否为login shell
- 查看
$0
变量的值。如果它以'-'开头,那么它是一个login shell。 - 使用
shopt -q login_shell
命令。返回true则为login shell。
重要性
- 正确的初始化可以确保用户的环境设置正确。
- 对于某些任务,如系统维护,了解shell的类型是很重要的。
本文作者:Maeiee
本文链接:login shell
版权声明:如无特别声明,本文即为原创文章,版权归 Maeiee 所有,未经允许不得转载!
喜欢我文章的朋友请随缘打赏,鼓励我创作更多更好的作品!