我是靠谱客的博主 典雅洋葱,最近开发中收集的这篇文章主要介绍shell切换用户执行后面语句 su与su -的区别,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

shell里如果需要切换用户,然后以指定用户的身份运行一些命令,比如需要用Oracle用户向.bash_profile文件里写入一行“ORACLE_BASE=/oracle/app”的内容
可以用下面的语句


复制代码
代码如下:

su - oracle <<!
echo "ORACLE_BASE=/oracle/app" >> .bash_profile
exit
!


关于su和su -的区别

切换用户是可以使用su tom或者su - tom来实现,但是两者有区别
su只是切换身份,但shell环境仍然是原用户的shell
su -是连用户的shell环境一起切换
切换了shell环境,PATH的环境变量才有效

举例子:

比如说 root用户在/root/目录下, su tom,
切换到了tom 用户,但是目录仍然在/root/下。
如果使用su - tom
你可以发现目录也切换到tom用户的家目录下
这也是造成一些命令报错:command not found的原因

最后

以上就是典雅洋葱为你收集整理的shell切换用户执行后面语句 su与su -的区别的全部内容,希望文章能够帮你解决shell切换用户执行后面语句 su与su -的区别所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(110)

评论列表共有 0 条评论

立即
投稿
返回
顶部