无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 3942|回复: 4
打印 上一主题 下一主题

[求助] 如何用批处理枚举某目录下所有子目录中的特定类型文件?

[复制链接]
跳转到指定楼层
1#
发表于 2013-4-13 11:48:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
譬如一个目录里有若干子目录,子目录中又有数量不一的下层子目录……形成目录树,每个目录当中都有可能存在若干个mp3文件。

请问如何把这些mp3文件(或其它指定扩展名的文件)给枚举罗列出来逐一作为参数提交给一个特定程序(如A.exe)去处理呢?假如这个A.exe可用命令行调用,但其本身又没有迭代遍历目录的参数。
2#
发表于 2013-4-13 21:28:10 | 只看该作者
  1. for /r "d:\abc" %%a in (*.mp3) do echo a.exe "%%a"
复制代码
假设目录名d:\abc,自己改。测试无误删掉echo

评分

参与人数 1无忧币 +3 收起 理由
zhaoyuxing + 3 谢谢!方法简单可行,避免我原来用vbs脚本的.

查看全部评分

回复

使用道具 举报

3#
发表于 2013-4-14 17:59:55 | 只看该作者
本帖最后由 2010khmsoft 于 2013-4-15 14:42 编辑

Title --告别繁琐的命令--管理员权限运行我! 制作人:KHMSOFT(我本疯狂)
@echo off
cls
color 9f
PUSHD %~dp0
set cur_dir=%cd%

::setlocal enabledelayedexpansion

if exist list.txt del list.txt /q
if exist list.cmd del list.cmd /q
echo.
echo.
echo.
echo.
set /p input=           请输入要进行判断的路径:

for /r "%input%" %%i in (*.mp3) do echo  a.exe  "%%i" /Y /H >>list.cmd
cls
echo.
echo.
echo 按按任意键退出...
echo.
echo pause >nul >>list.cmd
echo exit >>list.cmd
echo.
echo.
echo      批处理保存在%~dp0文件夹下
pause >nul
回复

使用道具 举报

4#
发表于 2013-4-14 18:00:59 | 只看该作者
本帖最后由 2010khmsoft 于 2013-4-15 14:48 编辑

Title --告别繁琐的命令--管理员权限运行我! 制作人:KHMSOFT(我本疯狂)
@echo oFF
cls
color 1f
PUSHD %~dp0
if exist list.bat del list.bat /q
if exist list.txt del list.txt /q
::setlocal enabledelayedexpansion
echo Title --告别繁琐的命令--管理员权限运行我! 制作人:KHMSOFT(我本疯狂) >>list.cmd
echo @echo off <NUL>>list.bat
echo cls >>list.bat
::echo SET CurDir=%CD% >>list.bat
echo 请在此处设置当前目录的命令,看示范文件头 >>list.bat
::echo PUSHD %~dp0 >>list.bat
echo color 1f >>list.bat
echo.
echo.
echo.
set /p input= 请输入挂载镜像的目录名:
md .\%input%
echo.
dir /b /a-d /s %input%\*.MP3 >>list.txt
echo.
echo.
set /p win7pe= 请输入保存系统文件的目录名:
for /f "tokens=*" %%i in (list.txt) do echo a.exe "%%i"  >>list.bat
Call list.bat
echo 按任意键退出...
puase >nul
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-12-1 01:23

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表