我正在尝试更新 win32 shell 脚本中的系统路径变量,但前提是值不存在。
我当前的版本看起来像这样:
for %%f in (xyz.exe) DO if [%%~$PATH:f]==[]; setx Path "%PATH%;%GRADLE_HOME%\bin" -m
我遇到的问题是
setx Path "%PATH%;%GRADLE_HOME%\bin"
这不起作用,但是如果我将引号更改为单引号
setx Path '%PATH%;%GRADLE_HOME%\bin'
它确实有效,但路径在第一次出现 Program Files 时结束。即 abc;def;程序
有什么办法可以克服这个吗?