這是在我的作業
echo PATH $ PATH \ $ PATH做什麼?
我不知道它是如何工作的。
echo PATH
打印 「PATH」$PATH
創建一個 「PATH」 變量...也許?\$PATH
表示在執行過程中應忽略「$」。
因此,該行只有兩個echo PATH
沒有真正的目的,並打印$PATH
的位置?
這是在我的作業
echo PATH $ PATH \ $ PATH做什麼?
我不知道它是如何工作的。
echo PATH
打印 「PATH」$PATH
創建一個 「PATH」 變量...也許?\$PATH
表示在執行過程中應忽略「$」。因此,該行只有兩個echo PATH
沒有真正的目的,並打印$PATH
的位置?
我認爲ubuntu上的默認shell已經打了一段時間,所以我會認爲這是你正在使用的,儘管下面也適用於所有兼容POSIX的shell和其他。
$PATH
擴大變量PATH
和\
轉義下一個字符,阻止shell將其解釋爲特殊字符。
如果我們假設PATH
包含/bin:/usr/bin
然後如果你運行:
echo PATH $PATH \$PATH
外殼將首先展開變量(1),然後執行結果(2)。
所以(1)給出:
echo PATH /bin:/usr/bin $PATH
其中,當作爲步驟運行(2)將輸出:
PATH /bin:/usr/bin $PATH
到控制檯。
$PATH
不會創建變量PATH
,它會像上述那樣擴展變量。如果你想創建一個新的,你應該使用:
PATH="Something"
小心:修改'$ PATH'的值可以很容易地混淆你的環境,使得難以執行任何命令(問題表明OP可能沒有意識到這一點。) –
'PATH =「Something」'將會完全覆蓋這個路徑,這樣做會天真地使你的shell無用。在你的登錄shell腳本中天真地做它可能會使你的帳戶變得對無經驗的用戶無用。儘管答案試圖提供幫助,但它會打開潛在的大量蠕蟲,應該解釋潛在的問題。 –
你試過嗎? 'echo $ PATH'不會創建一個變量,它會打印一個已經存在的變量的當前內容。 – twalberg
我認爲我表達了錯誤,這不是我所做的,它在我的作業上,它的工作原理,它只是我不知道它是如何工作的 – DS94
你應該坐在電腦前,打開一個外殼,並試驗三'echo'命令,以'PATH'開始,然後是'$ PATH',然後是'\ $ PATH'。這很簡單,對於想要在編程或計算機上工作的人來說,自我教育是必不可少的。請參閱「[多少研究努力預計堆棧溢出用戶?](http://meta.stackoverflow.com/questions/261592)」 –