标题: [文件操作] [解决]:全盘搜索取出指定后缀文件名以及所在文件夹路径 [打印本页]
作者: a794685135 时间: 2008-9-2 04:38 标题: [解决]:全盘搜索取出指定后缀文件名以及所在文件夹路径
bat达到的效果是
一个文件夹里面有指定后缀的文件(也有其他的) ,
也有子文件夹,而子文件夹里面也有指定后缀的文件(也有其他的)
判断如果次文件夹里面有指定后缀的文件,则输入
格式为
--------文件夹--------
文件
文件
--子文件夹1--
文件
文件
--子文件夹2--
文件
文件
我的目的是, 我有一个文件夹里面有很多歌曲文件,(有很多格式的,只要获取mp3、wma)
然后这个文件夹里面还有 以歌手的名字命名的子文件夹,
(可能有空文件夹,或者文件夹里面没有指定后缀的歌曲文件)
子文件夹里面则是歌手所属的歌曲
输入的格式如上
[ 本帖最后由 a794685135 于 2008-10-18 16:40 编辑 ]
作者: Batcher 时间: 2008-9-2 09:34
匹配2个关键字,可以用管道,先匹配第一个,然后通过管道传递给后面的命令再匹配第二个。- echo "1st 2nd 3rd 4th"|find "1st"|find "3rd"
复制代码
作者: 千浪 时间: 2008-9-2 15:13
- set /p ppp=请输入要查找的后缀文件(格式如jpg或mp3):
- FOR %%a in (c: d: e: f: g: h: i: j: k: l: m: n: o: p: q: r: s: t: u: v: w: s: y: z:) do dir /s/b %%a\*.%ppp%>>list.txt
- start list.txt
复制代码
作者: Batcher 时间: 2008-9-2 15:44 标题: 回复 3楼 的帖子
全盘搜索的时候,用for /r会快一些吧。
作者: a794685135 时间: 2008-9-4 14:41
2楼的那方法行不通啊,比如我一个目录里面有一个mp3,还有一个wma
dir |find "mp3" |find "wma"
在找到mp3后就停住了,
3楼的能不能完善下
就是如果在test目录里面发现了有mp3后缀的文件,
就首先把test目录名输出到txt,然后再在txt里面输出mp3的文件名(不要后缀)
比如C:\test里面有3个歌曲,分别为 两只老虎.mp3 两只蝴蝶.mp3 两只乌龟.wma
输出后txt的格式:
-----test-----
两只老虎
两只蝴蝶
两只乌龟
[ 本帖最后由 a794685135 于 2008-10-18 15:36 编辑 ]
作者: Batcher 时间: 2008-9-4 15:00 标题: 回复 5楼 的帖子
复制代码
作者: batman 时间: 2008-10-18 16:13
经过QQ上的详聊才知道了楼主的真实意图,代码如下:- @echo off&setlocal enabledelayedexpansion
- echo -------c:\test------->list.txt
- for /f "delims=" %%a in ('dir /b c:\test') do (
- for %%b in (.mp3 .wma) do (
- if /i "%%~xa" equ "%%b" echo %%~na>>list.txt
- )
- )
- for /f "delims=" %%a in ('dir /s /ad /b c:\test') do (
- for /f "delims=" %%b in ('dir /b "%%a"') do (
- for %%c in (.mp3 .wma) do (
- if /i "%%~xb" equ "%%c" set /a n+=1&set "_!n!=%%~nb"
- )
- )
- if !n! neq 0 (
- echo -------%%a------->>list.txt
- for /l %%d in (1,1,!n!) do call,echo %%_!n!%%>>list.txt
- set "n=0"
- )
- )
- start list.txt
复制代码
[ 本帖最后由 batman 于 2008-10-18 16:30 编辑 ]
作者: a794685135 时间: 2008-10-18 16:47
实验环境如下
C:\test
│ 1.bat
│ list.txt
│ 复件 (2) 新建 文本文档.txt
│ 复件 (2) 无语.mp3
│ 复件 (3) 无语.wma
│ 复件 新建 文本文档.txt
│ 无语.mp3
│ 无语.wma
│
├─123
│ 复件 (3) 新建 文本文档.txt
│ 复件 (4) 无语.mp3
│ 复件 (5) 无语.wma
│ 新建 文本文档.txt
│
└─新建文件夹
复件 (4) 新建 文本文档.txt
复件 (5) 新建 文本文档.txt
以上是文件夹的 内容
以下是需要得到的结果,得到的文件是mp3和wma的文件名
-------c:\test-------
无语
无语
复件 (2) 崩溃
复件 (3) 崩溃
-------c:\test\123-------
复件 (4) 崩溃
复件 (5) 崩溃
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |