我正在使用 setx 来设置环境变量。
我的命令是
setx -m PSR_NLC_FILE "%PROGRAMFILES(x86)%\Test Folder\"
但当我检查我的系统设置为
C:\Program Files (x86)\Test Folder"
由于引用,找不到路径。
当我将此命令用于另一个环境变量时,无需引号即可正确设置。
setx -m PSR_NLC_FILE "%PROGRAMFILES(x86)%\Test Folder\File.lic"
C:\Program Files (x86)\Test Folder\File.lic
有人能向我解释我做错了什么吗?
答案1
看这里
某些命令(例如 REG 和 FINDSTR)使用标准转义字符 \(如 C、Python、SQL、bash 和许多其他语言所使用的)。\ 转义可能会导致包含尾随反斜杠的引用目录路径出现问题,因为行末的结束引号 " 将被转义为 \"。
在你的情况下,另一个反斜杠应该可以解决问题
setx -m PSR_NLC_FILE "%PROGRAMFILES(x86)%\Test Folder\\"
答案2
不要在命令中添加尾部反斜杠。这对于路径名的正确解释来说不是必需的。
修改后的命令如下:
setx -m PSR_NLC_FILE "%PROGRAMFILES(x86)%\Test Folder"