Shell 和 su 命令

Shell 和 su 命令

有人可以解释一下为什么我发出:


回显$ 0

它说:

狂欢

什么时候

su –
echo $0

它说:

-苏

?我是否正确,在第一种情况下(仅su)当前 shell 会生成一个新的非交互式 shell,而在第二种情况下(su -)它只会保留在当前 shell 中?

答案1

当你使用 时,su你继承了正在运行 的用户的环境su。相反,当你使用su -(它是-login选项的快捷方式su)时,它会“完全”切换到 root 帐户并以与直接登录 root 时相同的方式设置环境

答案2

Alex 的回答是正确的,但他并没有真正解释你所看到的内容。当你运行时,su -它会导入你正在切换到的用户(在本例中为 root)的环境。你以 root 身份运行的最后一个命令一定是su

相关内容