【问题标题】:xcopy wildcard source folder name to destinationxcopy 通配符源文件夹名称到目标
【发布时间】:2014-06-06 05:32:05
【问题描述】:

我想从通配符源文件夹复制到目标文件夹:

xcopy a:\parentfolder\n* x:\parentfolder

因此,只有以“n”开头的文件夹才应复制到目标位置。

我们将不胜感激。

【问题讨论】:

  • 那么,您所拥有的有什么问题?如果有错误,请发布它。否则,请说明与您预期不同的工作方式。
  • 有错误吗?什么不起作用?
  • 我已经删除了目标文件夹中的一些文件,以测试上述命令是否会复制丢失的文件。即使我从上面的 xcopy 中没有得到任何错误,也不会复制丢失的文件。我还尝试了 xcopy 命令,如下所示: xcopy "E:\parentfolder\N*.*" "N:\parentfolder\" /D /F /I /Y /R

标签: batch-file cmd wildcard xcopy


【解决方案1】:
for /f "delims=" %%a in ('dir /b/ad "a:\parentfolder\n*" ') do xcopy "a:\parentfolder\%%a\*" x:\parentfolder\

正如你所拥有的那样,XCOPY 假定 n* 是一个文件规范,没有其他方法可以告诉它。

【讨论】:

  • 非常感谢 Magoo,但似乎某处可能存在小错误。我用几种不同的方式尝试了你的代码,但得到一个错误:“%%a 在这个时候是意外的”
  • 好的,我搞定了! :-) 看来问题出在双 %%a .... 上?把它改成唱 le %a 就行了。谢谢马哥!! :-)
  • 最后的调整是 xcopy 的 /s 开关。希望这对其他人有帮助。
  • @RenéSchutte 从批处理文件运行此命令时需要双精度 %。正如您所发现的,在命令行中您只需要一个 %
  • @user5428856 - 开关之间的 spces 是可选的 dir 尽管我通常使用它们。 sourcespec 和 destination 之间的 `` 绝对是一个错误 - 并且已经存在超过 18 个月了!很好的发现!
【解决方案2】:

如果您将第一张 CD 复制到要复制的文件夹中,它将起作用:

a:
cd \parentfolder
xcopy /s n*.* x:\parentfolder

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多