通配符匹配文件与两个"点"

时间:2017-03-30 12:12:57

标签: cmd command-prompt windows-shell

这不起作用:

del "folder\*.dll.config"

但是,它可以在不指定文件夹

的情况下工作
cd folder
del "*.dll.config"

为什么?

PS。还有,任何解决方法? (除了上面提到的那个 - 改变当前的目录然后再​​回来)

编辑:我是一个白痴,我的代码中有一个拼写错误,投票现在关闭我自己的问题。

2 个答案:

答案 0 :(得分:1)

您可以使用pushdpopd命令,例如:

 pushd folder
 del "*.dll.config"
 popd

这样您就可以移动到所需位置,删除所有.dll.config文件并返回上一个位置。

答案 1 :(得分:1)

在我的Windows 10上,它有效:

C:\>dir folder
Volume in drive C is SYSTEM
Directory of C:\folder

30.03.2017  14.33    <DIR>          .
30.03.2017  14.33    <DIR>          ..
29.03.2017  13.33           549.341 my.dll.config
29.03.2017  13.33           549.341 my.foo.bar
           2 File(s)      1.098.682 bytes
           2 Dir(s) 363.317.178.368 bytes free

C:\>del "folder\*.dll.config"

C:\>dir folder
Volume in drive C is SYSTEM
Directory of C:\folder

30.03.2017  14.33    <DIR>          .
30.03.2017  14.33    <DIR>          ..
29.03.2017  13.33           549.341 my.foo.bar
           1 File(s)        549.341 bytes
           2 Dir(s) 363.317.809.152 bytes free

C:\>

但是,您在上述评论中错误拼写错误消息让我检查了一些内容。

在您的情况下可能完全不相关,但果然,如果我拼错了文件夹名称,我会得到您提到的错误:

C:\>dir folder
Volume in drive C is SYSTEM
Directory of C:\folder

30.03.2017  14.33    <DIR>          .
30.03.2017  14.33    <DIR>          ..
29.03.2017  13.33           549.341 my.dll.config
29.03.2017  13.33           549.341 my.foo.bar
           2 File(s)      1.098.682 bytes
           2 Dir(s) 363.317.248.000 bytes free

C:\>del "dolder\*.dll.config"
The system cannot find the file specified.

C:\>