“reg save” 和 “reg export” 之间的区别?

“reg save” 和 “reg export” 之间的区别?

使用 Windows命令命令reg

reg save

将注册表的指定子项、条目和值的副本保存在指定的文件中。

reg export

将指定子项、条目和值的副本创建到文件中,以便将其传输到其他服务器。

.hiv除了生成为或的文件外,它们之间有什么区别.reg

答案1

生成的文件区别。

save将分支保存为注册表的原生“hive”格式。这可以保留密钥所有权和 ACL,因此最适合在同一台机器上进行备份和恢复。

export将其导出为文本格式,适合分发,因为 .reg 格式不保留任何元数据。

答案2

不仅仅是生成的文件不同。我注意到,使用 .reg 文件和使用 .hiv 文件时发生的情况截然不同

导入 .reg 文件时,您无需指定路径。它会根据 .reg 文件写入注册表,并保留导出和导入期间创建的新注册表项和条目。

而导入 .hiv 文件时,必须指定路径。导出和导入之间创建的新注册表项和条目将被删除。


举个例子来说明。

  1. 使用虚拟条目创建虚拟密钥

    reg add hkcu\test
    reg add hkcu\test /v entry /t REG_DWORD /d 1
    
  2. 如果你运行reg query hkcu\test你会看到这个

    HKEY_CURRENT_USER\test
        (Default) REG_SZ
        entry REG_DWORD 0x1

  3. 导出到 .reg 文件和 .hiv 文件

    reg export hkcu\test test.reg
    reg save hkcu\test test.hiv
    
  4. 然后创建一个新条目和一个新的子项

    reg add hkcu\test /v new_entry /t REG_SZ /d "ayy lmao"
    reg add hkcu\test\new_key
    
  5. 如果你运行reg query hkcu\test你会看到这个

    HKEY_CURRENT_USER\test
        (Default) REG_SZ
        entry REG_DWORD 0x1
        new_entry REG_SZ ayy lmao

    HKEY_CURRENT_USER\test\new_key

  6. 导入我们之前创建的.reg文件

    reg import test.reg 
    

    如果你运行reg query hkcu\test,你会看到与#5 相同的输出。

  7. 导入我们之前创建的 .hiv 文件

    reg restore hkcu\test test.hiv
    

    如果你运行reg query hkcu\test,你会发现我们在#4 中创建的新项目消失了,并且我们得到与#2 相同的输出。

相关内容