Windows 批次處理。當 PATH 環境變數包含空格時,附加到它

Windows 批次處理。當 PATH 環境變數包含空格時,附加到它

我想添加一些二進位檔案到我的控制台會話的路徑中,我正在這樣做

if not defined WIXTOOLKIT_IN_PATH (
    set WIXTOOLKIT_IN_PATH=1
    set MY_PATH=%~dp0..\tools\wix
    SET PATH=%MY_PATH%;%PATH%
)

但碰巧的是,我的 PATH 包含空格,並且我收到\Skype\Phone\ was unexpected at this time.帶有set PATH命令回顯的訊息

                                SET PATH=;C:\Python34\;C:\Python34\Scripts;C:\ProgramData\
Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\Sy
stem32\WindowsPowerShell\v1.0\;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;C:\Pr
ogram Files (x86)\Skype\Phone\;C:\Program Files\Microsoft SQL Server\120\Tools\Binn\;C:\Pr
ogram Files (x86)\Windows Kits\8.1\Windows Performance Toolkit\;C:\Program Files (x86)\Mic
rosoft SDKs\TypeScript\1.0\;C:\Program Files (x86)\CMake\bin

我確信這是一個微不足道的情況,但我找不到任何解決方案。我該如何修復它?

答案1

我的 PATH 包含空格,並且我收到訊息...此時出乎意料

您需要引用要設定的參數。

代替:

SET PATH=%MY_PATH%;%PATH%

和:

SET "PATH=%MY_PATH%;%PATH%"

進一步閱讀

  • Windows CMD 命令列的 AZ 索引- 與 Windows cmd 行相關的所有內容的絕佳參考。
  • - 顯示、設定或刪除 CMD 環境變數。使用 SET 所做的變更將僅在目前 CMD 會話期間保留。

相關內容