无忧启动论坛

 找回密码
 注册
搜索

请教一个修改注册表问题(感谢 pznpt !)

查看数: 3826 | 评论数: 8 | 收藏 1
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2013-4-17 11:23

正文摘要:

本帖最后由 2011xiaobing 于 2013-4-17 23:21 编辑 问题:求一批处理,把注册表HKLM\MYREG 下所有 字符 C:\  替换成 字符 X:\ 谢谢!

回复

2011xiaobing 发表于 2013-4-17 23:20:02
呵呵,测试成功!
多谢大师!

结帖!
pznpt 发表于 2013-4-17 21:27:13
本帖最后由 pznpt 于 2013-4-17 21:50 编辑

咋不早说有那么大呢?
1.需要第三方工具:http://www.bathome.net/thread-16975-1-1.html
  1. @echo off
  2. reg export "HKLM\MYREG" "%temp%\$$"
  3. reg delete "HKLM\MYREG" /f
  4. type "%temp%\$$"|sed "s/[Cc]:\\/X:\\/g" > "%temp%\$$.reg"
  5. reg import "%temp%\$$.reg"
  6. del "%temp%\$$.*"
  7. pause
复制代码
2.自己先导出注册表为back.reg,删除原注册表"HKLM\MYREG",运行下面的vbs,再手工将生成的abc.reg导入
  1. Set fso = CreateObject("Scripting.FileSystemObject")
  2. text = fso.OpenTextFile("back.reg",1,True,-1).ReadAll

  3. With New RegExp
  4.     .Pattern = "c:\"
  5.     .Global = True
  6.     .IgnoreCase = True
  7.     text = .Replace(text,"X:")
  8. End With

  9. fso.OpenTextFile("abc.reg",2,True,-1).Write text
  10. MsgBox "OK"
复制代码
2011xiaobing 发表于 2013-4-17 20:35:05
本帖最后由 2011xiaobing 于 2013-4-17 20:36 编辑

看来用纯CMD替换大量的字符不理想。
能利用第三方字符替换软件解决这个问题吗?
(如:FR.EXE--------FIND_REPLACE)。
由于导出的注册表是unicode编码格式,
要是转换成utf-8格式,字符转换就是秒杀。

还请大师指点!!!
2011xiaobing 发表于 2013-4-17 20:17:16
能不能只导出 只含有C:\ 的部分,这样的注册表只有2M。
2011xiaobing 发表于 2013-4-17 20:02:47
感谢尊敬的 pznpt 大师的指点!!!
反馈:
    在测试过程中,由于导出的注册表有几十M之巨,
现在批处理已运行40多分钟,还没结果,不知什么原因。
pznpt 发表于 2013-4-17 18:27:14
  1. @echo off
  2. reg export "HKLM\MYREG" "%temp%\$$"
  3. reg delete "HKLM\MYREG" /f
  4. (for /f "delims=" %%a in ('find /n /v ""^<"%temp%\$$"') do (
  5.    set "str=%%a"
  6.    setlocal enabledelayedexpansion
  7.    set "str=!str:c:\=X:\!"
  8.    set "str=!str:*]=!"
  9.    echo,!str!
  10.    endlocal
  11. ))>"%temp%\$$.reg"
  12. reg import "%temp%\$$.reg"
  13. del "%temp%\$$.*"
  14. pause
复制代码
可以参考:http://www.bathome.net/viewthread.php?tid=20173&rpid=120828
Win7以上系统右键以管理员权限运行

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-24 09:24

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表