![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-10 18:48 |
共 47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » [已结]如何用批处理分析注册表中收藏夹的路径? |
| 可打印版本 4,335 / 19 |
| 第1楼 sglxy | 发表于 2006-10-31 09:37 |
| 中级用户 发帖 87 积分 397 | |
|
[已结]如何用批处理分析注册表中收藏夹的路径? 我发现许多Windows XP用户的收藏夹的路径并非默认的,而是经用户自己修改的。在备份收藏夹时常常是大费周折,后来我发现在注册表中可以找到收藏夹的路径。以下是我在一个用户注册表中手工导出的键值:
"Favorites"="D:\\!临时文件夹\\!互联网临时文件夹\\Favorites" "Personal"="D:\\!我的文档" "SendTo"="D:\\!我的文档\\SendTo" "Favorites"="D:\\!临时文件夹\\!互联网临时文件夹\\Favorites" "Personal"="D:\\!我的文档" "SendTo"="D:\\!我的文档\\SendTo" ------------------------------------------------------- 我想通过批处理实现以下目的: 1、先用批处理自动导出用户注册表的和分支。并存为Favorites.reg文件。 2、然后,再用批处理对Favorites.reg文件进行处理,取得Favorites所在路径并保存到%fav%变量中备用。 请问批处理中如何能达到这个效果?,请各位朋友指点,在此先谢谢了! [ Last edited by sglxy on 2006-11-3 at 08:11 AM ] |
|
| 第2楼 redtek | 发表于 2006-10-31 10:07 |
| 金牌会员 发帖 1,147 积分 2,902 | |
|
晕,这么复杂啊~:)
我装有系统的分区里除了IE收藏夹(%HOMEPATH%\Favorites)备份以外, 桌面上使用的重要文档和常进的目录,全是以快捷方式指向非系统所在分区的某个目录而已, 系统坏了除了收藏夹要备份以外(RAR压缩收藏夹目录,也就一分钟), 然后没有再要备份的了,GHOST就完了~:) (系统分区除了那个收藏夹以外,从来不放任何将来还要备份花时间的东东,这样省事) |
|
| 第3楼 sglxy | 发表于 2006-10-31 10:44 |
| 中级用户 发帖 87 积分 397 | |
|
我只想将其中的"Favorites"="D:\\!临时文件夹\\!互联网临时文件夹\\Favorites"
找出来改变为D:\!临时文件夹\!互联网临时文件夹\Favorites 并保存到%fav%变量中去。 |
|
| 第4楼 lxmxn | 发表于 2006-10-31 12:22 |
| 版主 发帖 4,938 积分 11,386 | |
|
|
|
| 第5楼 fastslz | 发表于 2006-10-31 12:37 |
| 铂金会员 发帖 2,315 积分 5,493 来自 上海 | |
|
[ Last edited by fastslz on 2006-10-31 at 12:52 PM ] |
|
| 第6楼 sglxy | 发表于 2006-10-31 19:09 |
| 中级用户 发帖 87 积分 397 | |
|
两位朋友的方法都很精练,但是得到的值却并非我所希望的D:\!临时文件夹\!互联网临时文件夹\Favorites。而是好象短路径的那种:当前收藏夹位于 D:\互联网临时文?
|
|
| 第7楼 NaturalJ0 | 发表于 2006-10-31 20:27 |
| 银牌会员 发帖 533 积分 1,181 | |
|
其实用鼠标直接去剪切到后面的盘就行了,剪好了做下备份就一直认后面的盘了。
|
|
| 第8楼 fastslz | 发表于 2006-10-31 21:05 |
| 铂金会员 发帖 2,315 积分 5,493 来自 上海 | |
|
好象短路径的那种?中文长文件名我未测试~
|
|
| 第9楼 sglxy | 发表于 2006-10-31 21:18 |
| 中级用户 发帖 87 积分 397 | |
Originally posted by NaturalJ0 at 2006-10-31 08:27 PM: 谢谢NaturalJ0的热心解答,之所以需要批处理的方式自动分析,是希望它成为某一批处理的其中一个模块。在系统维护中大大减轻操作者的劳动强度。而用鼠标就失去了意义。 另外,本人在4、5楼朋友的启发下。将其作品改写如下,请朋友们指正: @echo off reg export "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" fav.reg for /f "tokens=2 delims==" %%b in ('find /i "Favorites" fav.reg') do set fav=%%b set fav=%fav:\\=\% set fav=%fav:"=% echo 本机的收藏夹位于%fav%>收藏夹.txt del fav.reg pause>nul 但是本批处理脚本运行结束后,总一个提示“操作成功结束”。该如何去掉它? [ Last edited by sglxy on 2006-10-31 at 09:26 PM ] |
|
| 第10楼 不得不爱 | 发表于 2006-10-31 22:04 |
| 超级版主 发帖 2,044 积分 5,310 来自 四川南充 | |
| 第11楼 sglxy | 发表于 2006-10-31 22:36 |
| 中级用户 发帖 87 积分 397 | |
Originally posted by qwe1234567 at 2006-10-31 10:04 PM: |
|
| 第12楼 lxmxn | 发表于 2006-11-01 00:23 |
| 版主 发帖 4,938 积分 11,386 | |
|
想不到 reg export 还有一个隐藏的参数,呵呵,学习了。 |
|
| 第13楼 sglxy | 发表于 2006-11-01 00:51 |
| 中级用户 发帖 87 积分 397 | |
|
请问超级版主,REG EXPORT "HKCU\Software\……一句中的“/nt4”参数代表什么意思?
另外,你的帖子里有一句:set fav=%%~a 我知道是附值。 但是其中的 “%%a”为何写成“%%~a”,它的意义是什么?请指点一下。 [ Last edited by sglxy on 2006-11-1 at 12:54 AM ] |
|
| 第14楼 lxmxn | 发表于 2006-11-01 01:39 |
| 版主 发帖 4,938 积分 11,386 | |
|
"/nt4"参数是指定导出的注册表文件里面表明的注册表版本信息,也就是"REGEDIT4"了,没有"/nt4"的参数,那么版本就可能是"Windows Registry Editor Version 5.00"了。 "%%~a"是"%%a"变量的扩展,作用就是去掉"%%a"外面的引号。 |
|
| 第15楼 namejm | 发表于 2006-11-01 01:41 |
| 荣誉版主 发帖 1,737 积分 5,226 来自 成都 | |
|
代超版回答:%%~a 是删除字符串前后的任何引号的意思。
|
|
| 1 2 下一页 |
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |