[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件管理] 批处理全盘搜索GHO文件(支持畸形文件夹)

本来这种批处理到处可见没什么稀奇,关键在于我的批处理支持畸形文件夹,谢谢
搜索完成后完整路径保存在当前目录list.txt文件中
本来想制作删除的。。。如果要做成删除的话在后面加上for /f %%i in (list.txt) do (del %%i /f /a /q)
本作品是改编的。。原作者只做了搜索2层目录,我只不过稍加修改。。现在是全盘所有目录
  1. SET TestFile=Test_%RANDOM%.TMP
  2. SETLOCAL ENABLEDELAYEDEXPANSION
  3. For %%I In (A: B: C: D: E: F: G: H: I: J: K: L: M: N: O: P: Q: R: S: T: U: V: W: X: Y: Z:) Do (
  4. CD.>%%I\%TestFile%
  5. cls&&If Exist %%I\%TestFile% echo %%I >>pflist.txt&&DEL %%I\%TestFile% /Q
  6. )
  7. for /f %%i in (pflist.txt) do (
  8. for /f "delims=$$$" %%I in ('dir /b /a-d /o-d "%%i\*.gho"  2^>nul') do (echo %%i\%%I >>list.txt
  9.   )
  10. )
  11. :a
  12. copy pflist.txt google.txt /y
  13. set /p=<nul>pflist.txt
  14. for /f  %%o in (google.txt) do (
  15. for /f  "tokens=*" %%i in ('dir /b /x /ad "%%o\"') DO (
  16. for /f  "delims=$$$" %%a in ('dir /b /a-d /o-d "%%o\%%i\*.gho"  2^>nul') do (
  17. echo %%o\%%i\%%a >>list.txt
  18.     )
  19. echo %%o\%%i >>pflist.txt
  20.   )
  21. )
  22. for %%i in (pflist.txt) do if "%%~zi"=="0" (del pflist.txt&&del google.txt&&exit) else (goto a)
复制代码

一大堆FOR肯定慢,可以优化嘛,不懂什么原理
寂寞是黑白的,但黑白不是寂寞,是永恒。BAT 需要的不是可能,而是智慧。

TOP

真的很慢耶。。。。。。。。。。。。。。。。

TOP

呵呵,楼主,幸苦啦~~

TOP

测试了下,C的扫描速度非常之慢。。。建议不扫C

TOP

。。。。。哭居然把引号写错了。。。帖子已经修改

TOP

不知道为什么,我在WIN7测试通不过。。。

C:\Users\Administrator\Desktop>(for /F "tokens=*" %i in ('dir /b /x /ad “C:\”'
) DO (
del google.txt
for /F "delims=$$$" %a in ('dir /b /a-d /o-d "C:\%i\*.gho" 2>nul') do (echo C:\
%i\%a  1>>list.txt )
echo C:\%i  1>>pflist.txt
) )
文件名、目录名或卷标语法不正确。



不知道哪边错了请指教

TOP

返回列表