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的原因

(0)

相关推荐

  • linux su命令参数及用法详解(linux切换用户命令)

    linux su 命令 建议大家切换用户的时候 使用 su - root 这样,否则可能发现某些命令执行不了 关于su 、su - 及 sudo的区别 请往下看 1.命令作用 su的作用是变更为其它使 ...

  • linux使用su切换用户提示 Authentication failure的解决方法

    这个问题产生的原因是由于ubtun系统默认是没有激活root用户的,需要我们手工进行操作,在命令行界面下,或者在终端中输入如下命令: sudo passwd Password:你当前的密码 Enter ...

  • Linux系统中的切换用户命令宝典

    #1:runuser命令 runuser命令使用一个替代的用户或者组ID运行一个Shell.这个命令仅在root用户时有用. 仅以会话PAM钩子运行,并且没有密码提示.如果用一个非root用户,并且该 ...

  • Linux下如何切换用户

    在使用Linux的过程中,我们经常需要切换用户,去做不同的工作,那么如何进行切换呢? 操作方法 01 切换用户的命令为:su username 02 从普通用户切换到root用户,还可以使用命令:su ...

  • 快速切换用户是什么意思 简单的介绍快速切换

    电脑快速切换用户是什么意思?相信还是有不少的新手朋友对此概念还不太清楚,下面将详细为大家讲解电脑切换用户的含义: 电脑上“切换用户”是指在电脑用户账户中同时存在两个及以上的用户时,通过点击开始菜单的注 ...

  • 在Linux的系统Shell脚本中使用if语句的方法

    Bourne Shell 的 if 语句和大部分编程语言一样 - 检测条件是否真实,如果条件为真,shell 会执行这个 if 语句指定的代码块,如果条件为假,shell 就会跳过 if 代码块,继续 ...

  • Win7怎么以其他用户身份运行程序 Win7快速切换用户身份运行程序教程

    Win7以其他用户身份运行程序方法,有时系统中可能会有不只一个用户账户,如果使用软件时需要选择切换用户,而你又着急用这个软件的话,重新登录账户很麻烦,于是就有了下面的问题: 这是windows 7官方 ...

  • win7切换用户访问共享、切换用户账户访问共享、共享文件夹切换用户的方法

    现在,很多单位都有文件服务器,通常会对局域网设置共享,并且为了方便访问,通常就会设置“记住访问密码”,这样以后访问共享文件时就不需要每次都输入密码了,虽然方便了共享文件访问.但是,当用户想切换访问共享 ...

  • 巧用组合键快速切换用户

    使用Windows XP的朋友在需要切换用户的时候,可以执行"开始→注销→切换用户"命令,或者按Ctrl+Alt+Del,启动"任务管理器",在"任务 ...