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

[文件操作] [已解决]批处理如何全盘查找指定的某个文件?

[已解决]bat如何实现?全盘搜索某个文件:xx软件.exe。只要找到任意1个,就goto

注意:xx软件.exe目录位置不确定、不是固定不变的。。
  1. echo 本地磁盘:
  2. for %%a in (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 (
  3. fsutil fsinfo drivetype %%a: | find "固定">nul && (echo %%a) && (
  4. 找到了,就goto :nexta
  5. 找不到,就goto :firsta
  6. )
  7. )
  8. :firsta
  9. set "t=%time: =0%"
  10. if "%t:~,5%" geq "21:50" if "%t:~,5%" leq "21:52" goto :first11
  11. ping 127.0.0.1 -n 40 >nul 2>nul
  12. goto :firsta
  13. :nexta
  14. exit
复制代码

  1. @echo off
  2. set "filename=xx软件.exe"
  3. for /f %%d in ('wmic logicaldisk get deviceid^|more +1') do (
  4.   for /f "delims=" %%p in ('dir %%d\"%filename%" /a-d /s /b') do (
  5.     if /i "%%~nxp"=="%filename%" (
  6.         goto :nexta
  7.     )
  8.   )
  9. )
  10. :firsta
  11. ....
  12. :nexta
复制代码

TOP

回复 2# aa77dd@163.com


    多谢。。。解决了。。。
  1. rem 指定待搜索的文件
  2. set "FileName=xx软件.exe"
  3. echo 正在搜索,请稍候...
  4. echo 本地磁盘:
  5. for %%a in (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 (
  6. fsutil fsinfo drivetype %%a: | find "固定">nul && (echo %%a) && (
  7. if exist %%a:\ (
  8.         for /f "delims=" %%b in ('dir /a-d /s /b "%%a:\*%FileName%" 2^>nul') do (
  9.             if /i "%%~nxb" equ "%FileName%" (
  10.                 echo,%%b
  11.    goto :nexta
  12.             )
  13.         )
  14.     )
  15. )
  16. )
  17. :firsta
  18. echo firstaaa
  19. set "t=%time: =0%"
  20. if "%t:~,5%" geq "21:50" if "%t:~,5%" leq "21:52" goto :first11
  21. ping 127.0.0.1 -n 40 >nul 2>nul
  22. goto :firsta
  23. :nexta
  24. echo nextaaa
  25. exit
复制代码

TOP

伸手党都是这些人。同样的问题问了好几次。

TOP

回复 3# ygqiang


    谢谢  分享
这么好的论坛!!!!

TOP

返回列表