标题: [文件操作] [已解决]如何用批处理提取IE缓存里的MP3文件 [打印本页]
作者: qq415650 时间: 2010-12-21 16:52 标题: [已解决]如何用批处理提取IE缓存里的MP3文件
我写的命令是 copy "%USERPROFILE%\Local Settings\Temporary Internet Files\*.mp3" "D:\tools\*.mp3" 可惜不能用 没反应
copy "C:\Documents and Settings\Administrator\Local Settings\Temporary Internet Files\*.mp3" "D:\tools\*.mp3" 也不能用
但如果是 copy "D:\*.mp3" "D:\tools\*.mp3" 就可以用 难道是系统限制??
[ 本帖最后由 qq415650 于 2010-12-21 17:22 编辑 ]
作者: hanyeguxing 时间: 2010-12-21 16:55
检查注册表中:HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders 下 Cache 的值是什么
或者直接:- @echo off
- for /f "skip=4 tokens=3 delims= " %%a in ('reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v cache') do copy "%%~a\*.mp3" "D:\tools\"
复制代码
delims=后为1个tab制表符
[ 本帖最后由 hanyeguxing 于 2010-12-21 17:10 编辑 ]
作者: qq415650 时间: 2010-12-21 17:22
- @echo off
- cls
- echo 请选择要提取的文件类型
- echo 1(mp3) 2(flv) 3(jpg) 4(gif) 5(swf) 6(mid) 7(其它类型)
- set /p type=
- if %type%==1 (set filetype=mp3)
- if %type%==2 (set filetype=flv)
- if %type%==3 (set filetype=jpg)
- if %type%==4 (set filetype=gif)
- if %type%==5 (set filetype=swf)
- if %type%==6 (set filetype=mid)
- if %type%==7 (echo 请输入文件类型,例如bmp
- set /p filetype=)
-
- goto startcopy
- :startcopy
- echo 正在提取文件,请稍候……
- md "%userprofile%\桌面\%filetype%"
- for /f "delims=" %%i in ('dir "%userprofile%\Local Settings\Temporary Internet Files\*.%filetype%" /s/b') do copy /y "%%i" "%userprofile%\桌面\%filetype%"
-
- if %delornot%==y (for /f "delims=" %%i in ('dir "%userprofile%\Local Settings\Temporary Internet Files\*.%filetype%" /s/b') do del /f/q "%%i")
- pause
- ::delims 是一行一行的取值,如果没有"delims"那么就取一行里第一个空格之前的内容
- ::FOR /f "delims=" %%a in ( 'type %p333%\1.txt' ) do dir /b "%%a">>%p333%
- ::dir "%userprofile%\Local Settings\Temporary Internet Files\*.swf" /s/b >1.txt
复制代码
作者: hanyeguxing 时间: 2010-12-21 17:47
- @echo off&setlocal enabledelayedexpansion
- set "r=%userprofile%\Local Settings\Temporary Internet Files"
- set "v=%userprofile%\桌面"
- for %%a in (mp3 flv jpg gif swf mid) do set/a a+=1&set #!a!=%%a
- set #
- set/p p=请输入其他文件类型,例如bmp,如果不需要,直接回车:
- if defined p set/a a+=1&set #!a!=%p%
- :q
- set/p q=请输入数字,然后按回车开始提取:
- if defined #%q% (
- md "%v%\!#%q%!" 2>nul
- for /f "delims=" %%i in ('dir /s/b/a-d "%r%\*.!#%q%!"') do copy "%%~i" "%v%\!#%q%!"
- ) else (
- echo 输入错误,请重新输入
- goto:q
- )
复制代码
[ 本帖最后由 hanyeguxing 于 2010-12-21 17:52 编辑 ]
作者: vigiles 时间: 2010-12-22 12:02
请问老师们,能否在拷贝时只选择指定格式体积最大的,并且拷贝完成后删除所有缓存文件?当然拷贝前首先要刷新。
另外寒夜孤星老师的那个有点别扭,能否将提示改为:请按数字选择文件类型,或直接输入其它类型。?
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |