为了账号安全,请及时绑定邮箱和手机立即绑定

如何在批处理文件中循环匹配通配符的文件

如何在批处理文件中循环匹配通配符的文件

拉风的咖菲猫 2019-11-07 11:21:12
我有一组基本文件名,每个名称'f'都有两个文件,'f.in'和'f.out'。我想编写一个批处理文件(在Windows XP中),该批处理文件将遍历所有文件名,每个文件名都应:显示基本名称“ f”对“ f.in”执行操作对“ f.out”执行其他操作除了搜索* .in(或* .out)之外,我没有任何办法列出基本文件名。
查看完整描述

3 回答

?
叮当猫咪

TA贡献1776条经验 获得超12个赞

如我所见,最简单的方法是使用for循环,该循环调用第二个批处理文件进行处理,并将第二个文件的基本名称传递给该文件。


根据for /?帮助,可以使用nifty〜n选项提取基本名称。因此,基本脚本将显示为:


for %%f in (*.in) do call process.cmd %%~nf

然后,在process.cmd中,假定%0包含基本名称并采取相应措施。例如:


echo The file is %0

copy %0.in %0.out

ren %0.out monkeys_are_cool.txt

在一个脚本中可能有更好的方法来执行此操作,但是对于如何在批处理文件的单个for循环中提取多个命令,我一直有些困惑。


编辑:太棒了!我以某种方式错过了文档中显示可以在FOR循环中执行多行块的页面。我现在必须回去重写一些批处理文件...


查看完整回答
反对 回复 2019-11-07
  • 3 回答
  • 0 关注
  • 885 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信