找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 26479|回复: 7

[文件操作] [已解决]批处理如何寻找所有子目录里面的指定文件并用外部程序调用?

[复制链接]
发表于 2011-12-2 21:33:16 | 显示全部楼层 |阅读模式
本帖最后由 kentfung 于 2011-12-2 23:34 编辑

如何寻找本目录下所有子目录里面的指定文件,并用外部程序调用

如:file目录下,分别有01,02,03……的目录(这些子目录文件名不规则的,可能是中文,数字,英文等),里面都会有一个*.abc的文件(这个文件名不确定,但扩展名是一定的),然后利用出来的结果,分别调用一个外部程序,格式如下
  1. program.exe -input z:\file\01\*.abc -setting -output z:\file\01\*
复制代码
-output z:\file\01\*   这里面的“*”跟*.abc对应的,program.exe会自动为“*”加上扩展名的。

小弟是小白,最近迷上批处理了,希望各位大大能看看怎样处理

评分

参与人数 1PB +2 收起 理由
CrLf + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2011-12-2 21:53:50 | 显示全部楼层
for /r %%a in (*.abc) do program.exe -input "%%a" -setting -output "%%a"

for /r “”  可以读取指定目录的子目录下的文件。""里可以指定读取路径,默认是批处理自身所在目录。

评分

参与人数 1技术 +1 收起 理由
CrLf + 1 乐于助人

查看全部评分

发表于 2011-12-2 22:15:33 | 显示全部楼层
看看这样行不?

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. color 1a
  4. for /r file %%a in (*.abc) do (
  5. :: 外部调用命令
  6. start  %%a
  7.   pause
  8.   )
  9. pause>nul
复制代码

评分

参与人数 1技术 +1 收起 理由
CrLf + 1 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2011-12-2 22:21:32 | 显示全部楼层
楼上只会一个start是吧?楼主的要求都不看?
 楼主| 发表于 2011-12-2 22:59:31 | 显示全部楼层
for /r %%a in (*.abc) do program.exe -input "%%a" -setting -output "%%a"

for /r “”  可以读取指定 ...
wankoilz 发表于 2011-12-2 21:53



    for /r “”   指定读取路径?   for /r "Z:\file\01" 是这样吗?
不过我里面的01是一些不规则的目录,也不可能自己一个一个打上去啊??是不是会有一些函数之类的东西来代表呢??
发表于 2011-12-2 23:08:26 | 显示全部楼层
不需要具体的目录名,用父目录即可。
for /r "Z:\file" ...

评分

参与人数 1PB +5 收起 理由
CrLf + 5 乐于助人

查看全部评分

发表于 2011-12-2 23:31:11 | 显示全部楼层
回复 5# kentfung


for /r 命令自己可以遍历子目录

评分

参与人数 1PB +3 收起 理由
CrLf + 3 乐于助人

查看全部评分

 楼主| 发表于 2011-12-2 23:32:29 | 显示全部楼层
嘻嘻。。成功了,谢谢你啊。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-18 11:17 , Processed in 0.023973 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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