su - root -c切换到root并获取root的环境变量及执行权限并执行命令

1、su root 和 su - root 的区别

su 默认切到 root,su 与su - 的区别:

  • su 是不改变当前变量
  • su - 是切换到用户的变量
  • su只能获得root的执行权限,不能获得环境变量,而su - 是切换到root并获得root的环境变量及执行权限

2、su - user -c

切换用户只执行一条命令的可以用:su - oracle -c command,-c 是 command的缩写

列如 su - oracle -c “lsnrctl start”,这样的好处就是不用切换到oracle用户下去执行,如果是在脚本中就更方便了。

切换用户执行一个shell文件可以用:su - oracle -s /bin/bash shell.sh

配合EOF使用实现Oracle的自启动

1
2
3
4
5
6
7
8
9
#!/bin/bash
 
su - oracle <<EOF
lsnrctl start
sqlplus /nolog
conn /as sysdba
startup
exit
EOF

  

posted @   让我们荡起双桨!  阅读(1015)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· 因为Apifox不支持离线,我果断选择了Apipost!
历史上的今天:
2021-03-10 JSMpeg低延时H5直播
点击右上角即可分享
微信分享提示