簡體   English   中英

更改PATH時找不到sudo命令

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM