2011-06-16 37 views
0

我有两个文件,一个是旧的,其中来自此文件的“一些”数据需要被覆盖到第二个文件中。这些文件实际上是.reg文件。在这些文件中,大约有30个已定义的键,但只需要更新约10个键。下面显示了这两个文件的一个示例。比较两个txt文件,并进行更改,使它们是标记

的文件(旧)的.reg


Windows注册表编辑器5.00版

[HKEY_CURRENT_USER \ SOMETHING \ PERM \ ******中国] @ = “1234567”

[HKEY_CURRENT_USER \ SOMETHING \ PERM \ ClientCode] @ =“B01”

[HKEY_CURRENT_USER \ SOFTWARE \ MICROSOFT ....] “帐户名”= “等等,等等,blah.com” “服务器名称”= “PCCCCP”

等等 等等

文件(新)的.reg


的Windows注册表编辑器版本5.00

[HKEY_CURRENT_USER \ SOMETHING \ PERM \ ******中国] @ = “XXXXXXX”

[HKEY_CURRENT_USER \ SOMETHING \ PERM \ ClientCode] @ = “XXX”

[HKEY_CURRENT_USER \ SOFTWARE \ MICROSOFT ....] “帐户名称”= “等等,等等,blah.com” “服务器名”= “XXXXXX”

等等 等等


任何人都可以帮助?使用批处理或使用vbscript更容易吗?我现在正在学习,也许这个要求有点过头了。我正在寻找的是代码片段。

在此先感谢!

+3

为什么不用'xcopy'来覆盖? – Benoit 2011-06-16 16:59:50

回答

0
FOR /F "USEBACKQ tokens=*" %%F IN (`type old.reg` ^| FIND /V /I "string you wish to omit"`) DO (ECHO %%F>>new.reg) 

对于每个附加字符串,添加另一个^ | FIND/V/I因此“希望省略字符串”:

(`type old.reg` ^| FIND /V /I "string you wish to omit" ^| FIND /V /I "string you wish to omit" ^| FIND /V /I "string you wish to omit"`) 

然后,只需呼应新的字符串作为输出到该文件。我之前没有搞砸过.reg文件,所以我不确定他们是否需要按照特定顺序进行操作?如果是这样的话,你至少要搞批处理脚本= P

+0

我想过使用FC(文件比较),但输出有点过于无组织,我真的没有办法输出它,使其有用,而不必浪费大量时间搞清楚。 – Mechaflash 2011-06-16 17:12:05

相关问题