linux命令中苏和su -有什么区别

  介绍

这篇文章主要介绍了linux命令中苏和su -有什么区别,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获、下面让小编带着大家一起了解一下。

<节>


简单俩说,苏或苏者——都是用来切换用户的,格式如下,

 <代码> su  [-], username  
  ,

<>强不带用户表示切换到根

二者的区别在于,苏只是切换了用户身份,但是shell还是原来的用户的,那属于原壳的环境变量依然生效。有时候我们发现明明切换了用户,但是有些命令还是执行不了,就是因为用户虽然切换了,但是环境变量还是之前用户的。

多说无用,上个栗子。

我有两个用户,user1和user2,他们的环境变量不相同。

先来看下各自的环境变量,

user1,

 <代码>美元,echo 美元路径
/usr/地方/java/jdk1.8.0_161/bin:/usr/地方/java/jdk1.8.0_161/jre/bin:/usr/地方/bin:/usr/bin:/bin:/usr/地方/游戏:/usr/游戏:/usr/地方/mysql/bin
  ,

user2,

 <代码> user2@iZ2ze82p1dogvdrx4fu0i7Z: ~,美元echo 路径
/home/user2美元/bin:/home/user2。local/bin:/usr/地方/java/jdk1.8.0_161/bin:/usr/地方/java/jdk1.8.0_161/jre/bin:/usr/地方/bin:/usr/bin:/bin:/usr/地方/游戏:/usr/游戏
  ,

我们先用苏命令看看效果,

 <代码> user2@iZ2ze82p1dogvdrx4fu0i7Z:/home/user1,美元su  user1 
密码:,
user1@iZ2ze82p1dogvdrx4fu0i7Z: ~,美元echo 美元路径
/usr/地方/sbin:/usr/地方/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/游戏:/usr/地方/游戏
user1@iZ2ze82p1dogvdrx4fu0i7Z: ~ $,
  ,

可以看的到,切换到了user1后,打印的环境变量还是user2的。

再用su -对比看看效果,

 <代码> user2@iZ2ze82p1dogvdrx4fu0i7Z: ~,美元su 作用;user1 
密码:,
,美元echo 美元路径
/usr/地方/java/jdk1.8.0_161/bin:/usr/地方/java/jdk1.8.0_161/jre/bin:/usr/地方/bin:/usr/bin:/bin:/usr/地方/游戏:/usr/游戏:/usr/地方/mysql/bin美元
,
  ,

很明显,环境变量也切换过来了。

感谢你能够认真阅读完这篇文章,希望小编分享的“linux命令中苏和su -有什么区别”这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!

linux命令中苏和su -有什么区别