-bash [root command not found

服務器上一用su - 切換用戶就會提示 -bash : [root command not found

切換tomcat就變 [tomcat  切換oracle用戶就變[oracle 總之就是一切換就提示,但是正常運行。

這個原因總會是環境設置的問題,我找了很久,把profile看了無數遍,最後給我抓着了。

這個是安裝oracle後出現的,由於偷懶粘貼在設置profile的時候貼成了

1 if [$USER = "oracle"]; then
2   if [$SHELL = "/ben/ksh"];then
3      ulimit -p 16384
4      ulimit -n 65536
5   else
6      ulimit -u 16384 -n 65536
7   fi
8 fi

 其實[ 和$USER之間需要空格來分離的。連在一起就成了一個變量[root之類的,給轉義了。因此我加了空格後再source /etc/profile就正常了。同樣下面的$shell 也得空格隔開,以避免su - oracle時 警告/bin/bash no such file or directory.修改如下:

1 if [ $USER = "oracle" ]; then
2   if [ $SHELL = "/ben/ksh" ];then
3      ulimit -p 16384
4      ulimit -n 65536
5   else
6      ulimit -u 16384 -n 65536
7   fi
8 fi

 轉自:http://my.oschina.net/wenic705/blog/28066

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章