歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> SHELL編程

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的原因
Copyright © Linux教程網 All Rights Reserved