[英]Sudo command not found when change PATH
更改$ PATH時,我在sudo命令中遇到問題:
-bash: id: command not found
-bash: tty: command not found
-bash: uname: command not found
[root@ol6 ~]# sudo
-bash: sudo: command not found
並回顯$ PATH
[root@ol6 ~]# echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/sbin:/sbin:$PATH:/opt/jdk1.8.0_66/bin:/opt/jdk1.8.0_66/jre/bin
你能告訴我解決這個問題嗎? 謝謝sm。
sudo
位於RedHat上的/usr/bin
中,但我認為您的真正問題是,當您更改PATH並在其中獲得原義的$PATH
時,單引號$PATH
出現了,而不是您的預期!
當您可能想在它之前和之后添加一些內容時,您會以某種方式在您的PATH
變量中得到文字字符串$PATH
。 我想您是通過在分配時使用單引號來實現的:
PATH='/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/sbin:/sbin:$PATH:/opt/jdk1.8.0_66/bin:/opt/jdk1.8.0_66/jre/bin'
什么時候應該使用雙引號
PATH="/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/sbin:/sbin:$PATH:/opt/jdk1.8.0_66/bin:/opt/jdk1.8.0_66/jre/bin"
因此$PATH
會擴展到其當前值(盡管對於您當前的shell來說已經太晚了)。
無論如何,對我而言, sudo
位於/usr/bin
因此如果您的路徑中沒有sudo
則在不指定完整路徑的情況下將無法運行它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.