我希望创建一个批处理文件,将当前目录添加到我的系统变量
PATH
中(而不是用户变量)。
当我使用以下命令时:
SETX /M PATH "%CD%;%PATH%"
它完成了所需的任务,但是我收到了一个错误信息:
保存的数据被截断为1024个字符。
当我使用GUI检查系统变量时,我发现用户路径(User Path)被添加到系统路径(System Path)中。因此,系统路径出现了重复条目。
我尝试将%PATH%
变量分配给临时变量并回显,但我在那里看到了重复内容。
我在某些堆栈答案中看到,我们在批处理文件中使用的%PATH%
变量实际上是用户路径和系统路径的连接。
在命令提示符下,我尝试了以下操作:
REG QUERY "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v PATH"
不过我不确定我们是否可以将其用于获取 PATH 值并将其赋值给另一个变量。
- 因此,我需要找到一种方法,仅将系统 PATH 分配给一个临时变量,比如说 SYS_PATHS。怎么做呢?
- 有没有更好的方法来解决这个情况?
PATH
,但也有一些非常好的解决方案。 - MofiPATH
中。您只需要将此文件夹路径添加到__local__PATH
中即可。这通常是不必要的,因为cmd.exe
总是在使用__local__PATH
和__local__PATHEXT
之前首先在当前目录中搜索程序或脚本。 - Mofiif "%PATH:~-1%" == ";" ( set "PATH=%PATH%%CD%" ) else ( set "PATH=%PATH%;%CD%" )
,以将当前目录路径追加到本地PATH
环境变量,此环境变量不会被持久化存储在 Windows 注册表中,仅由当前运行的命令进程和从该命令进程启动的所有应用程序使用。 - Mofi