SET 之后的 REG 命令在 DOS/Windows 批处理文件 (.BAT) 中是 "unknown"
REG command after SET is "unknown" in DOS/Windows batch file (.BAT)
在我的批处理文件中,我开始使用变量,突然以下命令不再起作用。
这是我的代码中有问题的部分
SET "path=MyPath"
REG ADD "HKCU\Software\ETC\ETC" /f /v "MyRegNameA" /t REG_SZ /d "%path%\ETC\"
REG ADD "HKCU\Software\ETC\ETC" /f /v "MyRegNameB" /t REG_SZ /d "%path%"
PAUSE
START "" "%path%\MyProgram.exe"
此代码在没有 SET...
的情况下也能正常工作,当然还有 MyPath
而不是 %path%
。错误消息是:
The command "REG" is either spelled wrong or couldn't be found
我之前在这里找到了如何使用变量:stackEx.SetVariables
据我所知,我完全按照预期做,到目前为止我找不到具体的帮助。
path
是一个合乎逻辑的名称,但它不是一个好用的名称,因为它是由 Windows 分配的。
path
是以分号分隔的目录列表,Windows 用于查找程序。更改后,Windows 将无法再找到 reg.exe
,因为 reg.exe
不在 mypath
.
中
只需选择另一个名称 - 不要使用 path
。如果在提示符下输入 set
,您将看到由 Windows 建立的许多变量的列表。简单规则 - 不要将它们中的任何一个用于用户变量。
在我的批处理文件中,我开始使用变量,突然以下命令不再起作用。
这是我的代码中有问题的部分
SET "path=MyPath"
REG ADD "HKCU\Software\ETC\ETC" /f /v "MyRegNameA" /t REG_SZ /d "%path%\ETC\"
REG ADD "HKCU\Software\ETC\ETC" /f /v "MyRegNameB" /t REG_SZ /d "%path%"
PAUSE
START "" "%path%\MyProgram.exe"
此代码在没有 SET...
的情况下也能正常工作,当然还有 MyPath
而不是 %path%
。错误消息是:
The command "REG" is either spelled wrong or couldn't be found
我之前在这里找到了如何使用变量:stackEx.SetVariables 据我所知,我完全按照预期做,到目前为止我找不到具体的帮助。
path
是一个合乎逻辑的名称,但它不是一个好用的名称,因为它是由 Windows 分配的。
path
是以分号分隔的目录列表,Windows 用于查找程序。更改后,Windows 将无法再找到 reg.exe
,因为 reg.exe
不在 mypath
.
只需选择另一个名称 - 不要使用 path
。如果在提示符下输入 set
,您将看到由 Windows 建立的许多变量的列表。简单规则 - 不要将它们中的任何一个用于用户变量。