![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-09 22:45 |
共 47,811 主题排行 / 349,897 发帖 / 今日 2 篇 / 48,255 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 如何实现从注册表读取IE缓存路径并清空? |
| 可打印版本 1,496 / 7 |
| 第1楼 peter1123 | 发表于 2008-10-02 15:34 |
| 初级用户 发帖 9 积分 20 | |
|
如何实现从注册表读取IE缓存路径并清空? REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v Cache
我知道用这个命令读取 但如何用批处理清空? 希望哪位大侠指点一二 |
|
| 第2楼 peter1123 | 发表于 2008-10-02 16:43 |
| 初级用户 发帖 9 积分 20 | |
|
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 ] |
|
| 第3楼 peter1123 | 发表于 2008-10-02 16:43 |
| 初级用户 发帖 9 积分 20 | |
|
贴个完整的
@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 ] |
|
| 第4楼 peter1123 | 发表于 2008-10-02 23:08 |
| 初级用户 发帖 9 积分 20 | |
|
@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 |
|
| 第5楼 peter1123 | 发表于 2008-10-02 23:17 |
| 初级用户 发帖 9 积分 20 | |
|
@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 再精简一下 |
|
| 第6楼 peter1123 | 发表于 2008-10-02 23:53 |
| 初级用户 发帖 9 积分 20 | |
|
@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 ] |
|
| 第7楼 wgmlzj | 发表于 2008-10-03 00:15 |
| 初级用户 发帖 40 积分 97 | |
|
@echo off
ipconfig/release ipconfig/renew ipconfig /registerdns arp -d Nbtstat -R Nbtstat -RR ipconfig /flushdns |
|
| 第8楼 peter1123 | 发表于 2008-10-03 13:57 |
| 初级用户 发帖 9 积分 20 | |
|
@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 |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |