我正在处理批处理文件,我需要添加以下条目:
doskey wfreerdp="C:\Program Files\wfreerdp\wfreerdp.exe" $*
此注册表项:
HKCU\Software\Microsoft\Command Processor
我使用了reg add
的选项,但是我根本无法使用它。
我知道应该是这样的:
reg add "HKCU\Software\Microsoft\Command Processor" /v doskey wfreerdp = "C:\Program Files\wfreerdp\wfreerdp.exe" $*
但是我没有哪一个以及如何使用/t
,/S
,/d
和/f
标志。
如果我手动添加条目:
doskey wfreerdp = "C:\Program Files\wfreerdp\wfreerdp.exe" $*
它运行完美。
或者,我尝试创建C:\bat\macros.doskey
文件,其中包含doskey命令:
doskey wfreerdp = "C:\Program Files\wfreerdp\wfreerdp.exe" $*
以及批处理文件中的以下内容:
reg add "HKCU\Software\Microsoft\Command Processor" /v Autorun /d "doskey /macrofile=\"c:\bat\macros.doskey\"" /f
没有成功。
有什么提示吗?
答案 0 :(得分:1)
如果您试图将doskey
命令添加到命令提示符的AutoRun中,以便每次您打开cmd.exe
时都将运行,那么您将需要运行以下命令:
reg add "HKCU\Software\Microsoft\Command Processor" /v "AutoRun" /d "doskey wfreerdp = \"C:\Program Files\wfreerdp\wfreerdp.exe\" $*"
让我们分解一下:
摘自cmd /?
上的文档:
If /D was NOT specified on the command line, then when CMD.EXE starts, it looks for the following REG_SZ/REG_EXPAND_SZ registry variables, and if either or both are present, they are executed first. HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun and/or HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRun
您已经知道您将密钥放入HKEY_CURRENT_USER\Software\Microsoft\Command Processor
。
/v
开关指定要添加/修改的值名称,在本例中为AutoRun
键。/d
开关指定该密钥应包含的内容,在本例中为doskey
命令。"
),因此您需要对其进行转义,以免命令行(\"
)处理引号。