使用以下代码
REGEDIT /E C:\output.reg
在C目录中创建注册表转储文件。当存在具有相同名称的文件时,它会自动覆盖。当我尝试将输出目录更改为相对路径时,如此
REGEDIT /E output.reg
它不起作用。
没有创建文件,但处理时间与通常一样长。哪个代码可以使用相对路径导出整个注册表?
与请求一样,.bat代码包括调试代码:
ECHO %CD%
REGEDIT /E output.reg
PAUSE
命令行输出:
C:\Users\Username\Desktop\New_folder>ECHO C:\Users\Username\Desktop\New_folder
C:\Users\Username\Desktop\New_folder
C:\Users\Username\Desktop\New_folder>REGEDIT /E output.reg
C:\Users\Username\Desktop\New_folder>PAUSE
Press any key to exit . . .
.bat文件执行之前(和之后)的文件夹:
答案 0 :(得分:1)
您问题中给出的命令语法已经很好了。如果为输出文件名提供相对路径,则将相对于当前工作目录创建该文件。这可以通过交互式命令提示轻松验证。
无论您的批处理脚本出现什么问题,问题都不像您目前所推测的那样。一些更明显的解释包括:
<强>更新强>
非常感谢你的问题更新。我试图重新创建你的场景(我在Windows 7上,但我怀疑这很重要),我确实找到了和你一样的问题。该命令在交互式控制台窗口中正常工作,但在批处理脚本中执行时则不行。
我不知道为什么会这样,但是这里有一个简单的解决方法就是提供完整的路径:
REGEDIT /E %cd%\output.reg