求个批处理bat/小软件 能够列出看到目录下所有文件的 小工具。并带有搜索功能。

最好 还能直达 这个文件的根目录。
批处理的话 要告诉我输出的txt 文件 输出在什么位置。
按照我的给出的例子写:
我要搜索 d:\a 目录下 所有的文件,输出list到 D:\LIST.TXT

@echo off
for /r 路径 %%a in (*) do echo %%a >>temp.txt
pause

cd d:\\pptv
for /r %%c in (*.* ) do echo %%~fc>>d:\list.txt
大家可以改改。。

@echo off&setlocal enabledelayedexpansion
cls
echo 1. 查看当前目录文件
echo 2. 将文件列表生成list.txt
echo 3. 转到路径
echo 4. 查找文件(当前目录下及所有子目录)
echo 5. 查找文件夹(当前目录下及所有子目录)
echo 6. 打开当前目录
echo 7. 全盘查找
set /p num=请选择:
if %num%==1 goto 1
if %num%==2 goto 2
if %num%==3 goto 3
if %num%==4 goto 4
if %num%==5 goto 5
if %num%==6 goto 6
if %num%==7 goto 7
%0
:1
cls
echo 当前目录:
set n=0
for /f "tokens=*" %%i in ('dir /b') do (
set /a n+=1
echo !n!. %%i
)
echo (任意键返回)
pause>nul
%0
:2
cls
if exist "List.txt" echo .>List.txt
for /f "tokens=*" %%i in ('dir /b') do (
echo %%i>>List.txt
)
echo 已在当前目录生成List.txt,是否打开(y/n)?
set /p num=(y/n):
if %num%==y start "" "List.txt"
%0
:3
cls
echo 你想跳转到哪个路径下(可跳转到电脑任意目录下)?
set /p num=请输入想去的路径:
echo.
pushd "%num%" && echo 跳转成功 || echo 跳转失败
echo 当前目录:%cd%
ping -n 2 127.1>nul
%0
:4
cls
set /p num=文件名(带上后缀):
echo 正在搜索...
for /f "tokens=*" %%i in ('dir /a-d /s /b %num%') do (
set name=%%i
set 路径=%%~dpi
echo.
echo ------------------------------------------
echo 搜索到的文件: %%i
echo 位于:%%~dpi
echo 大小: %%~zi 字节
echo ------------------------------------------
echo 1. 执行该文件
echo 2. 打开该文件所在目录
echo 3. 按其它键继续查找
set /p var=你选择:
call :44
)
echo 查找完毕
echo.
echo 任意键回主菜单
pause>nul
%0
:44
if !var!==1 start "" "!name!"
if !var!==2 start "" "!路径!"
:5
cls
set /p num=目录名:
echo 正在搜索...
for /f "tokens=*" %%i in ('dir /ad /s /b ^| findstr %num% ') do (
set 路径=%%~dpi
echo.
echo ------------------------------------------
echo 搜索到的目录: %%i
echo 位于:%%~dpi
echo 大小: %%~zi 字节
echo ------------------------------------------
echo 1. 打开目录
echo 2. 按其它键继续查找
set /p var=你选择:
call :55
)
echo 查找完毕
echo.
echo 任意键回主菜单
pause>nul
%0
:55
if !var!==1 start "" "!路径!"
:6
start "" "%cd%"
%0
:7
cls
set /p num=文件名.目录名:
echo 正在搜索...
set a=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
for %%i in (%a%) do (
if exist %%i: (
pushd %%i:\
for /f "tokens=*" %%a in ('dir /b /s %num%') do (
echo 已找到:%%a
echo 打开(文件)目录请按y
set /p var=
if !var!==y start "" "%%~dpa"
)))

 

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2016-01-27
@echo off
for /r "d:\a" %%a in (*) do echo %%a>>d:\list.txt
pause
cd /d d:\a
for /r %%c  in (*.* ) do echo %%~fc>>d:\list.txt
pause

搜索 d:\a 目录下 所有的文件,输出list到  D:\LIST.TXT

本回答被提问者和网友采纳
第2个回答  2013-12-17
@echo off
echo  正在生成中……
for /f "delims=0" %%i in ('dir /s /b C:\*.txt')do echo 文件名%%~nxi 全路径%%i>>txt.txt
for /f "delims=0" %%i in ('dir /s /b D:\*.txt')do echo 文件名%%~nxi 全路径%%i>>txt.txt
for /f "delims=0" %%i in ('dir /s /b E:\*.txt')do echo 文件名%%~nxi 全路径%%i>>txt.txt
for /f "delims=0" %%i in ('dir /s /b F:\*.txt')do echo 文件名%%~nxi 全路径%%i>>txt.txt
for /f "delims=0" %%i in ('dir /s /b G:\*.txt')do echo 文件名%%~nxi 全路径%%i>>txt.txt
txt.txt
这是全盘搜索
lz的意思是
for /f "delims=0" %%i in ('dir /s /b D:\a\*.*') do echo %%i >>list.txt

追问

能不能按我的要求 代入一下啊

追答

for /f "delims=0" %%i in ('dir /s /b D:\a\*.*') do echo %%i >>list.txt
for /f "delims=0" %%i in ('dir /s /b D:\pptv\*.*') do echo %%i >>list.txt

追问

不行啊。。没有生成list.txt。。
我改成这样可以吗
for /f "delims=0" %%i in ('dir /s /b D:\*.*') do echo %%i >>D:\list.txt

追答

完全可以,不过是D盘所有文件了

第3个回答  2014-09-10
@echo off
for /r "d:\a" %%a in (*) do echo %%a>>d:\list.txt
pause
cd /d d:\a
for /r %%c  in (*.* ) do echo %%~fc>>d:\list.txt
pause

...能够列出看到目录下所有文件的 小工具。并带有搜索功能。_百度知 ...
echo off&setlocal enabledelayedexpansionclsecho 1. 查看当前目录文件echo 2. 将文件列表生成list.txtecho 3. 转到路径echo 4. 查找文件(当前目录下及所有子目录)echo 5. 查找文件夹(当前目录下及所有子目录)echo 6. 打开当前目录echo 7. 全盘查找set \/p num=请选择:if %num%==1 goto 1i...

求批处理bat 高手电脑全盘下搜索多个指定文件
方法一: 使用系统的“搜索”功能,搜索后缀名称。文件,然后搜索列出所有选定的文件,复制即可。方法2: (批量)打开记事本,输入以下内容: xcopy c: * 。123 sxcopy d: * .123 sxcopy e: * .123sxcopy f: * .123\/s 然后保存为”批量拷贝”。“ bat”(注意另存为带有批处理后缀的“所有文...

求个批处理BAT.把当前文件夹下文件及文件夹复制到指定点.如果目标文 ...
按您说的逻辑,有可能找到的目标文件夹多余1个,该程序只向第一个找到的文件夹拷贝。运行时,在目标目录下,输入:search_copy.bat somefile 就可将当前目录下的文件和目录(含所有子目录)都拷贝到文件名中含有“somefile”的目录下。

如何用批处理命令自动生成文件夹内所有文件名清单?
以下是详细的步骤:首先,打开你需要列出文件的文件夹,创建一个新的纯文本文件,例如我们创建了一个名为"list.txt"的文件,如图所示:在文件夹内新建记事本文件 接下来,打开"list.txt",并在其中输入以下批处理命令:echo offdir \/b \/on list.txt保存文件后,只需将文本文件的扩展名从".txt"改...

求bat批处理删除当前目录下所有txt文件中的数字内容
如果文件中内容都是你上面举例的格式:中文+数字+扩展名,可以这样:echo offfor %%i in (1 2 3 4 5) do ( (for \/f "tokens=1* delims=0123456789" %%a in (%%i.txt) do echo %%a%%b)>tmp move \/y tmp "%%i.txt")如果文件中内容有中文+数字混合的,如:中文12字体3.png,则:ec...

怎么用DOS批处理写一个,列出某个目录下的所有文件
Dir这个就行,想看具体帮助的话:Dir \/?如果你是想列出文件的目录树并写入文件的话就用:tree \/f > D:\\文件目录树.txt类似这样。

灰常难!bat脚本文件实现批处理:在目录及子目录下查找文件名中包含指定字...
用powershell把.大概是这样的 dir *ped*.key|%{F:\\LSDYNA\\manager.exe $_} 如果有需求可以直接用百度hi联系我

bat批处理遍历文件夹所有子目录下的mp4文件并计算总时长?
自行修改代码中相关路径和视频格式@echo off & title 统计所有视频的总时长 By 依梦琴瑶cd \/d "%~dp0"::设置要统计的主目录路径set WorkDir=D:\\Videos\\电视剧::设置要统计的视频格式(仅限右键属性中可以看见视频长度的视频格式)set vExt=*.3gp,*.avi,*.mp4,*.wmv,*.ts,*.flvecho 正在...

如何写一个批处理文件(.bat)批量删除当前目录及子目录下的所有文件名...
dir中加上\/s参数 并把set f=%%i改成set f=%%~nxi

如何写一个批处理文件(.bat)批量删除当前目录及子目录下的所有文件名...
把五个问号改成您要删除的字符。set f=!f:_=!其它字符的,按照这个样子写就行。

相似回答