按照《鸟哥私房菜》说 su 和 su- 分别是用login shell 和nologin shell的方式登录的
那么我在测试的时候用普通用户 ppp 登录后 su root $USER 不变,理论上正常。exit 后 su centos(另一个普通账户)$USER 却变成了 centos 理论上不变
然后用root登录后 su centos 又变了,$USER变成centos,理论上不变
这是为什么 按书上说 su 处于nologin shell 读取的是~/.bashrc 和 /etc/bashrc
su - 属于 login shell 读取/etc/profile 和 ~/.bash_profile 也会间接读取~/.bashrc 和 /etc/bashrc文件
我在/etc/profile 中发现有修改USER这个变量的代码 而其他另外三个文件没有
这样理论上su 是不改变 USER这个变量(还有其他变量 我单举这个例)属于nologin shell
但是却出现前面我所写的问题,且还出现不同情况,是我理解错误,还是有些地方弄错了,学的不精,请大佬们解惑!!!