Linux实用(4):交互式登录shell和交互式非登录shell

1、当用户登录时或su - 用户名,该文件被读取

su - root,产生一个交互式登录shell。

su root,产生一个非登录交互shell。非登录交互shell,只执行 用户家目录下 .profile等配置文件。

你打开mac终端时,就是交互式登录shell,所以要使你的系统配置所有用户都生效,就要都以交互式登录方式。

 

对于Bash来说

登录shell:会首先读取和执行/etc/profile全局配置文件中的命令,然后依次查找~/.bash_profile、~/.bash_login 和 ~/.profile这三个配置文件,读取和执行这三个中的第一个存在且可读的文件中命令。除非被“–noprofile”选项禁止了。

非登录shell:只读取 ~/.bashrc (和 /etc/bash.bashrc、/etc/bashrc )文件,不同的发行版里面可能有所不同。

 

2、退出shell

#查看当前活跃的shell

ps -ef | grep bash

#退出当前shell(login 命令登录时,可以用logout退出)

exit

#可以查看当前shell ID , 退出shell后,可以执行这个指令来验证是否退出成功

echo $$

找到对应系统配置和用户级别配置

 

交互式与非交互式shell:

区分:是否与用户进行交互(在终端上执行,shell等待你的输入,并且立即执行你提交的

你可能感兴趣的:(linux,shell)