2012-01-04 608 views
2

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

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

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

我试过使用/EXCLUDE:参数xcopy命令,但它无法执行此操作。如果我将排除指定为\FolderB1\*.txt或其他类似的内容,则不起作用。

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

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

这可以通过使用Robocopy来实现吗?完全类似的问题提出here。 任何指针都会有用。提前致谢。

回答

3

为了澄清,我假设你的意思是排除位于FolderB1的所有.txt文件,但不排除位于其他位置的.txt

你可以用两步完成robocopy。首先复制除.txt以外的所有文件。而在第二步中只复制.txt文件,但不包括FolderB1

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