【发布时间】:2020-12-17 18:44:48
【问题描述】:
我有一堆以下列模式命名的文件 FILENAME0.ext FILENAME1.ext FILENAME2.ext FILENAME3.ext FILENAME4.ext,我正在尝试复制具有特定编号的文件文件名的末尾到不同的文件夹。
所以我举例:
xcopy "C:\testfolder\*1.ext" "C:\testfolder\folder1"
但由于某种原因,它不仅会复制以 1 结尾的文件,还会复制其他一些文件(有点不一致)。 奇怪的是 - 它确实适用于文件名以 0 结尾的文件。 看来我对 * 通配符有什么不明白的地方?或者也许有更好的方法来完成这项任务?
【问题讨论】:
-
dir /x "C:\testfolder\*1.ext"显示什么? -
嗯,谢谢。带有 /x 的 dir 显示文件名以 1 结尾但也以短文件名(8.3 文件名)结尾的文件。我不知道文件可以有两个文件名。我还找到了一个解决方案 - 过滤掉短文件名:
for %%A in (C:\testfolder\*1.ext) do @echo %%A | >nul findstr 1.ext && xcopy "%%A" "C:\testfolder\folder1"
标签: windows batch-file wildcard batch-processing xcopy