标题: [文件管理] 批处理全盘查找文件 [打印本页]
作者: fml520 时间: 2008-3-15 11:05 标题: 批处理全盘查找文件
本人刚学批处理,写的不好,还请前辈们指教。用的都是基本命令,没什么花头。别见效啊。- @echo off
- title 全盘查找文件 by fmr520
- color 89
- :cd
- cls
- echo.
- echo.
- set /p "p=按回车"
- cls
- echo.
- echo.
- echo 请输入要找的文件名和后缀如;abc.txt
- echo.
- echo.
- set /p p=请输入:
- del dir.txt /a/s/q>nul
- for /f "delims=" %%i in ('dir/a/b/s c:\;d:\;e:\ ^|findstr /c:"%p%" ') do (set
-
- sum+=1
- if "%%a" gtr 1 goto dir
- cls
- if "%%~nxi" equ %p% cd/d"%%~dpi"
- call "%%~nxi"&&goto cd
- :dir
- echo "%%i">>dir.txt
- )
- echo.
- echo.
- echo 文件名重复,无法一次打开多个文件,请查看dir.txt文件
- echo.&echo.
- pause
- goto cd
复制代码
作者: foxJL 时间: 2008-3-15 12:21
要是不只三个分区呢,是不是要加个分区自动获取呀?
作者: fml520 时间: 2008-3-15 18:50
这个我还不会自动获取分区,麻烦版主指点一下
作者: foxJL 时间: 2008-3-15 19:22
呵呵...慢慢来.
试下这条命令:复制代码
作者: fml520 时间: 2008-3-19 10:37
修改了 一下代码
-
- @echo off
- title 全盘查找文件 by fmr520
- color 89
- setlocal enabledelayedexpansion
- echo.
- echo.
- echo 请输入要找的文件名和后缀如;abc.txt
- echo.
- echo.
- set /p p=请输入:
- for /f "delims=\" %%i in ('fsutil fsinfo drives^|find /v ""') do (
- set var=%%i
- set drive=!var:~-2!
- fsutil fsinfo drivetype !drive!|find "固定">nul && (
- for /f "tokens=*" %%j in ('dir /a-d /b /s !drive!\%p% 2^>nul') do (set sum+=1
- if "%%j" gtr 1 goto dir
- cls
- if "%%~nxj" equ %p% cd/d"%%~dpj"
- call "%%~nxj"&&goto cd
- :dir
- echo "%%j">>dir.txt
- )
- )
- )
- exit
复制代码
作者: fml520 时间: 2008-3-19 10:45
千万不要输入模糊的,如*.jpg *.exe
这样的话会把找到的所有文件都全部打开。
如要模糊查找,我在给个模糊查找的代码
@echo off
title 全盘查找文件 by fmr520
color 89
setlocal enabledelayedexpansion
echo.
echo.
echo 请输入要找的后缀如;*.txt
echo.
echo.
set /p p=请输入:
for /f "delims=\" %%i in ('fsutil fsinfo drives^|find /v ""') do (
set var=%%i
set drive=!var:~-2!
fsutil fsinfo drivetype !drive!|find "固定">nul && (
for /f "tokens=*" %%j in ('dir /a-d /b /s !drive!\%p% 2^>nul') do echo "%%j">>dir.txt
)
)
start dir.txt
exit
作者: woxingwoshu007 时间: 2009-4-15 16:01
@echo off
set /p chenlun=输入要搜索的文件名:
echo 正在搜索中请稍等......
for %%a in (c d e f h) do for /f "tokens=*" %%b in ('dir /s/b/a-d %%a:\%chenlun%') do (echo %%b & start "" "%%b")
pause
我感觉这样好像更简单点吧
作者: Batcher 时间: 2009-4-15 16:02 标题: 回复 7楼 的帖子
批处理bat代码是越短越好吗?
http://bbs.bathome.net/viewthread.php?tid=4026
作者: csqsw 时间: 2009-5-13 16:18
俺是新人。
问一下,要查找QQ.exe,如果装的是双系统,两个系统中都装有QQ,都有QQ.exe文件,如何能把两个QQ都显示出来啊?这段代码,只能显示第一个查找到的。
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |