2017-10-05 83 views
0

我在Windows上運行bash,我無法弄清楚爲什麼會發生這種情況。爲什麼envsubst替換/

我有一個變量,如 export SOCKET=/socket然後當我運行echo '$SOCKET' | envsubst我得到C:/Program Files/Git/socket。出於某種原因,它正在取代斜線。

任何想法爲什麼會發生這種情況?如果我查看printenv的輸出,那麼Git在路徑中唯一的環境變量是EXEPATH=C:\Program Files\Git

+2

您的'envsubst'實現似乎將替換絕對路徑名,無論虛擬文件系統'bash'看到「真實」Windows路徑。 – chepner

回答

0

當我讀到@ chepner關於路徑損壞的評論時,意識到這可能與bash在Windows上進行路徑轉換有關。

然後我試着設置MSYS_NO_PATHCONV=1這應該是防止路徑轉換,現在它工作正常。謝謝!