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

[文件操作] 批处理如何定位包含特殊字符的文件夹内的文件

[复制链接]
发表于 2021-10-28 08:44:14 | 显示全部楼层 |阅读模式
我需要在 C:\ProgramData 文件夹及其子文件夹下搜索一个名为 Automa.exe 的文件

使用代码 dir /b /s "C:\ProgramData\"|findstr /i "Automa.exe"
可以得到最下面的两个结果, 但是我只需要{9BC913EF-D564-4B5C-B234-C4F218671CFE}文件夹下的那个文件, 且文件夹名的花括号内的值也是不固定的


使用下面的代码, 却只回显了第二个文件的名字, 请高手支招一下, 这个带有{}的文件夹, 应该怎样定位, 非常感谢


for /f "delims=" %%i in ('dir /b /s C:\ProgramData^|findstr /i "Automa.exe"') do (set "waexe=%%~fi")
echo %waexe%

最后期待的结果是, 回显 C:\ProgramData\{9BC913EF-D564-4B5C-B234-C4F218671CFE}\Automa.exe

------------------------------------------
Microsoft Windows [版本 6.1.7601]
版权所有 (c) 2009 Microsoft Corporation。保留所有权利。

C:\Users\Administrator>dir /b /s "C:\ProgramData\"|findstr /i "Automa.exe"
C:\ProgramData\{9BC913EF-D564-4B5C-B234-C4F218671CFE}\Automa.exe
C:\ProgramData\~0\Automa.exe
-----------------------------------------
发表于 2021-10-28 09:00:21 | 显示全部楼层
  1. cd /d "C:\ProgramData"
  2. dir /b /s /a-d|findstr /ei "{.*}\\Automa.exe"
复制代码

评分

参与人数 1技术 +1 收起 理由
5i365 + 1 牛X

查看全部评分

 楼主| 发表于 2021-10-28 09:19:32 | 显示全部楼层
本帖最后由 5i365 于 2021-10-28 09:20 编辑

回复 2# qixiaobin0715


    感谢帮忙, 药到病除!
能解释一下, /ei 参数什么意思吗? 没查到
发表于 2021-10-28 09:23:36 | 显示全部楼层
findstr /i /e
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-21 04:35 , Processed in 0.029699 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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