中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 如何实现从注册表读取IE缓存路径并清空?
作者:
标题: 如何实现从注册表读取IE缓存路径并清空? 上一主题 | 下一主题
peter1123
初级用户





积分 20
发帖 9
注册 2007-2-13
状态 离线
『楼 主』:  如何实现从注册表读取IE缓存路径并清空?

REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v Cache

我知道用这个命令读取
但如何用批处理清空?

希望哪位大侠指点一二

2008-10-2 15:34
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
peter1123
初级用户





积分 20
发帖 9
注册 2007-2-13
状态 离线
『第 2 楼』:  

set tar=REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v Cache
for /f "skip=2 tokens=1,3" %%i in ('%tar%') do (set x=%%j)
for /f "delims=:\ tokens=1" %%i in ('echo %x%') do (set qqpan=%%i:)
for /f "skip=2 tokens=1,2 delims=:" %%i in ('%tar%') do (set y=%%j)
set f3="%qqpan%%y%"
rd /s /q %f3% & md %f3%

感谢WOWFANS提供
rd /s /q %f3% & md %f3%
不知道为什么这句用del替换就没效果了。。。

[ Last edited by peter1123 on 2008-10-2 at 16:44 ]

2008-10-2 16:43
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
peter1123
初级用户





积分 20
发帖 9
注册 2007-2-13
状态 离线
『第 3 楼』:  

贴个完整的

@echo off
echo 正在清理系统垃圾文件,请稍等......
set tar=REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v Cache
for /f "skip=2 tokens=1,3" %%i in ('%tar%') do (set x=%%j)
for /f "delims=:\ tokens=1" %%i in ('echo %x%') do (set qqpan=%%i:)
for /f "skip=2 tokens=1,2 delims=:" %%i in ('%tar%') do (set y=%%j)
set f3="%qqpan%%y%"
rd /s /q %f3% & md %f3%
del /f /q  "%userprofile%\recent\*.*"
del /f /s /q /a "%systemdrive%\recycled\*.*"
del /f /s /q /a "%systemdrive%\RECYCLER\*.*"
del /f /q %windir%\prefetch\*.*
rd /s /q %Temp% & md %temp%
rd /s /q %Tmp% & md %tmp%
rd /s /q %windir%\temp & md %windir%\temp
echo 清理系统垃圾完成
pause


注意: 别把TEMP TMP IE缓存等环境变量放在根目录下!
否则RD /S将会全部删除的


[ Last edited by peter1123 on 2008-10-2 at 16:50 ]

2008-10-2 16:43
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
peter1123
初级用户





积分 20
发帖 9
注册 2007-2-13
状态 离线
『第 4 楼』:  

@echo off
echo 正在清理系统垃圾文件,请稍等......
set tar=REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v Cache
for /f "skip=2 tokens=1,2*" %%i in ('%tar%') do (set ie=%%k)
rd /s /q "%ie%" & md "%ie%"
del /f /q  "%userprofile%\recent\*.*"
del /f /s /q /a "%systemdrive%\recycled\*.*"
del /f /s /q /a "%systemdrive%\RECYCLER\*.*"
del /f /q %windir%\prefetch\*.*
rd /s /q %Temp% & md %temp%
rd /s /q %Tmp% & md %tmp%
rd /s /q %windir%\temp & md %windir%\temp
echo 清理系统垃圾完成
pause

改进了一下
原来的办法太傻了。。。这下只需要一次for就OK

2008-10-2 23:08
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
peter1123
初级用户





积分 20
发帖 9
注册 2007-2-13
状态 离线
『第 5 楼』:  

@echo off
echo 正在清理系统垃圾文件,请稍等......
for /f "skip=2 tokens=1,2*" %%i in ('REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v Cache') do (rd /s /q "%%k" & md "%%k")
del /f /q  "%userprofile%\recent\*.*"
del /f /s /q /a "%systemdrive%\recycled\*.*"
del /f /s /q /a "%systemdrive%\RECYCLER\*.*"
del /f /q %windir%\prefetch\*.*
rd /s /q %Temp% & md %temp%
rd /s /q %Tmp% & md %tmp%
rd /s /q %windir%\temp & md %windir%\temp
echo 清理系统垃圾完成
pause

再精简一下

2008-10-2 23:17
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
peter1123
初级用户





积分 20
发帖 9
注册 2007-2-13
状态 离线
『第 6 楼』:  

@echo off
echo 正在清理系统垃圾文件,请稍等......
for /f "skip=4 tokens=1,2*" %%i in ('REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v Cache') do (rd /s /q "%%k" & md "%%k")
del /f /q  "%userprofile%\recent\*.*"
del /f /s /q /a "%systemdrive%\recycled\*.*"
del /f /s /q /a "%systemdrive%\RECYCLER\*.*"
del /f /q %windir%\prefetch\*.*
rd /s /q %Temp% & md %temp%
rd /s /q %Tmp% & md %tmp%
rd /s /q %windir%\temp & md %windir%\temp
echo 清理系统垃圾完成
pause




skip=4  
这样才适合XP使用
skip=2
适合2003用

暂时测试结果是这样。。。。

[ Last edited by peter1123 on 2008-10-3 at 11:23 ]

2008-10-2 23:53
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
wgmlzj
初级用户





积分 97
发帖 40
注册 2007-11-26
状态 离线
『第 7 楼』:  

@echo off
ipconfig/release
ipconfig/renew
ipconfig /registerdns
arp -d
Nbtstat -R
Nbtstat -RR
ipconfig /flushdns

2008-10-3 00:15
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
peter1123
初级用户





积分 20
发帖 9
注册 2007-2-13
状态 离线
『第 8 楼』:  

@echo off
echo 正在清理系统垃圾文件,请稍等......
REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v Cache > %Temp%\cache.txt
for /f "skip=2 tokens=1,2*" %%i in ('find /i "cache" %Temp%\cache.txt') do (del /f /s /q "%%k")
del /f /q  "%userprofile%\recent\*.*"
del /f /s /q /a "%systemdrive%\recycled\*.*"
del /f /s /q /a "%systemdrive%\RECYCLER\*.*"
del /f /q %windir%\prefetch\*.*
rd /s /q %Temp% & md %temp%
rd /s /q %Tmp% & md %tmp%
rd /s /q %windir%\temp & md %windir%\temp
echo 清理系统垃圾完成
pause

2008-10-3 13:57
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: