DOS命令 - 使用Robocopy排除文件夹中的文件

时间:2012-01-04 10:15:39

标签: batch-file dos robocopy

我有一个包含许多其他子文件夹的文件夹。我正在尝试编写一个批处理文件,它会将一些文件夹复制到我硬盘上的另一个位置。我正在使用xcopy。文件夹结构如下所示:

FolderB1
  FolderB2
  FolderB22
  File1.txt
  File2.txt
  File3.txt

我在FolderB1中有一些.txt文件,还有FolderB2和FolderB22。我想复制FolderB2和FolderB22并跳过文件夹B1中包含的.txt文件

我尝试使用/EXCLUDExcopy命令的参数,但无法执行此操作。如果我将排除指定为\FolderB1\*.txt或类似的东西,它就不起作用。

主文件夹的数量未知。它可以是任何东西。此外,.txt文件的名称没有固定模式。也检查了这个问题,但没有帮助。

另外,我想避免使用del命令,因为全部复制并再次删除会消耗时间。

可以使用Robocopy来实现吗?提出了完全相似的问题here。 任何指针都很有用。提前谢谢。

1 个答案:

答案 0 :(得分:3)

为了澄清,我认为您的意思是排除.txt中的所有FolderB1个文件,但不排除位于其他位置的.txt

您可以通过两个步骤使用robocopy来完成此操作。首先复制除.txt之外的所有文件。在第二步中,仅复制.txt个文件,但不包括FolderB1

robocopy c:\source c:\destination /s /xf *.txt
robocopy c:\source c:\destination *.txt /s /xd c:\source\FolderB1