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

1、su root 和su - root的区别

su rootsu - 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的自启动

#!/bin/bash

su - oracle <<EOF
lsnrctl start
sqlplus /nolog
conn /as sysdba
startup
exit
EOF
发布了49 篇原创文章 · 获赞 12 · 访问量 6万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章