我一直有一個相當不尋常的問題。在我的.bashrc文件中,我已經將一個變量設置爲一個包含空格的路徑名。我有一種感覺,這會造成問題,但我設置以類似的方式別名發揮各地,並得到它,像這樣的工作:cd(1)和變量與空格(cygwin)
alias npp="\"/cygdrive/c/Program Files (x86)/Notepad++/notepad++.exe\""
現在,我想我可以用同樣的伎倆我的環境變量 -
export PRO="\"/cygdrive/c/Program Files (x86)\""
這工作。有點。
[myName]
$ echo $PRO
"/cygdrive/c/Program Files (x86)"
[myName]
$ cd $PRO
bash: cd: "/cygdrive/c/Program: No such file or directory
我試着不除去雙引號的空間之前放置一種逃避,我已經試過單引號與不逃避。我試過使用嚴重口音作爲引號。我試過只是逃跑,我試過
export PRO=/cygdrive/c/Program\\\ Files\\\ \\\(x86\\\)
這一切都沒有奏效。有唯一的辦法就是 -
export PRO="/cygdrive/c/Program Files (x86)"
$ cd "$PRO"
最終,我試圖找到一種方法,讓我的變量的工作不加上引號,它周圍的每一次我鍵入變量。由於完全沒有想法,我來到這裏希望有人能夠幫助我。
這就是它應該工作的方式。如果你想把空格的值當作單個單詞處理,那麼用雙引號將它括起來是一種方法。有一種觀點認爲,你應該幾乎總是用雙引號括起變量(特別是可能包含空格的變量)。 –