日期:2014-05-16  浏览次数:20706 次

su与su-的区别(Linux Shell中切换用户)

 ?前者只是切换了身份,但SHELL环境仍然是原用户的SHELL;www.linuxidc.com而后者连用户和SHELL环境一起切换成新用户的了。只有切换了SHELL环境才不会出现PATH环境变量错误。

  具体案例:

  有人用root登陆。然后切换到oracle用户下,执行sqlplus 命令 却报错:?command not found!

  就是因为使用的是su ,而不是su -

  另外还有个很明显的区别:

  比如说 root用户在/root/目录下, su oracle,

  切换到了oracle 用户,但是目录仍然在/root/下。

  如果使用su - oracle

  你可以发现目录也切换到oracle用户的家目录下。