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 会话期间保留。

相关内容