windows – 使批处理文件FOR命令工作没有通配符?
发布时间:2020-12-14 02:17:53 所属栏目:Windows 来源:网络整理
导读:我已经看到了如何使用遍历目录的批处理文件并处理与通配符表达式匹配的各种文件的示例,例如: FOR %%f IN (*.ext) DO ( ECHO Found ext file %cd%%%f) 以上内容仅匹配当前目录中以.ext结尾的文件.但是如果我只想匹配一个确切的文件名,如果它存在于该目录中
我已经看到了如何使用遍历目录的批处理文件并处理与通配符表达式匹配的各种文件的示例,例如:
FOR %%f IN (*.ext) DO ( ECHO Found ext file %cd%%%f ) 以上内容仅匹配当前目录中以.ext结尾的文件.但是如果我只想匹配一个确切的文件名,如果它存在于该目录中呢?我想要的东西: FOR %%f IN (someFile.ext) DO ( ECHO Found our file name in %cd% ) 然而,这似乎不起作用; FOR命令将“somefile.ext”解释为字符串,并始终运行FOR循环一次.如何尝试匹配当前目录中的确切文件名,没有通配符? 解决方法
Windows需要FORW循环的“通配符”表达式才能按预期运行.因此,您可以提供此类表达式,同时可能通过通配符匹配额外文件,并使用额外的IF语句将其过滤掉:
FOR %%f IN (somefile.ext*) DO ( IF /I "%%f"=="somefile.ext" ( ECHO Found somefile.ext in ECHO dir: %cd% ECHO. ) ) …或者只是首先使用IF语句来检查文件是否存在: IF EXIST somefile.ext ( ECHO Found somefile.ext in ECHO dir: %cd% ECHO. ) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 在Windows 7中使用C#运行Selenium测试时出现“IEDriverServ
- 如何在Windows 10上删除由vagrant创建的额外主机网络接口?
- vbscript – 在Windows上使用VBS处理MS Word
- JNI编程实现(Windows)
- 使用Windows SDK 8.1在Windows 7上进行开发
- windows – 是否有任何可执行的压缩器可以使用64位二进制文
- tfs – MTM测试用例运行不会在所有套件中更新
- 有没有办法让PowerShell 2的远程处理功能在Windows XP机器之
- windows-8 – Windows应用商店应用:如何绘制虚线?
- 将两个uint8_t组合为uint16_t