批处理全盘搜索文件的几种方法


原作者地址:http://blog.dzwww.com/?uid-338597-action-viewspace-itemid-443220
原作者: 大众博客 » 唐影的个人空间 » 日志
批处理全盘搜索文件的几种方法
方法一:(模糊查找)

        这个批处理虽然简单,但是能实现很多功能,不管你有多少个盘一律通吃,在找到文件后会把文件所在的具体位置给你显示出来,让你能一目了然...如果你要搜索gho文件,就输入“.gho”然后回车就搞定了。

@echo off
echo icyheart制作
title 文件搜索
color 2a
echo.
:loop
set /p filename=请输入要查找的文件名:
echo.
echo 文件搜索中,请耐心等待...
set alldrive=c d e f g h i j k l m n o p q r s t u v w x y z
for %%i in (%alldrive%) do if exist %%i:\ dir /s /b %%i:| find "%filename%">>results.txt
type results.txt
del results.txt
echo 搜索完毕
echo.
echo.
echo 继续查询请输入y,退出请输入n
echo.
echo.======================================
set /p choice=请输入您的选择:
if %choice%==y goto loop
if %choice%==n goto end
pause>nul
:end
exit


方法二:(只搜索当前目录)

@echo off
set /p filename=请输入要查找文件扩展名:
echo.
echo 文件搜索中,请耐心等待...
for /f "delims=" %%i in ('dir /b /a-d /s "*.%filename%"') do echo %%i
pause


方法三:(精确查找,需要输入准确的文件名,包括扩展名)

@echo off
set /p file=请输入要查询的文件:
for /f "delims=. tokens=1,2" %%c in ("%file%") do wmic datafile where "extension='%%d' and filename='%%c'" get name
pause



方法四:(搜索1.bat并跳转到该文件所在目录)

@echo off
echo ----------------请稍等,正在查找中----------------
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 (
   for /f "delims=" %%i in ('dir /s/a/b/a-d "%%a:\1.bat" 2^>nul') do (
      cmd /k cd /d "%%~dpi"
)
)

你可能感兴趣的:(批处理)