需要批处理文件来复制新文件和更改的文件

时间:2013-03-19 20:08:10

标签: windows batch-file

我需要将文件从一个位置复制到另一个位置,但只复制新文件或已更改的文件。

例如,我在C:\ Working中有数据,其中包括文件夹和文件。文件已更改,并从那里删除,因为它们不再需要或项目已完成。

我需要一个批处理文件将该位置的所有内容移动到D:\ Storage。由于某些文件可能没有更改,我不想复制这些文件,但是,我确实希望复制和替换已修改过的文件。

我相信我可以使用Robocopy / E,这将为我提供我需要的递归。我不确定如何检查哈希或标记以验证文件是否已更改。我知道我可以使用/ XC排除文件,但我认为这与我想要的相反。

现在我的文件如下:

@echo off
pushd C:\Working
>nul Robocopy /E . D:\Storage
popd

编辑:我不想复制所有内容,因为工作位置可能超过60GB,只需要复制1-2GB。

1 个答案:

答案 0 :(得分:3)

http://ss64.com/nt/robocopy.html

  

默认情况下,如果源和目标具有不同的时间戳或不同的文件大小,Robocopy将仅复制文件。

因此,Robocopy . D:\Storage /E应该没问题。您可能希望根据需要添加/XO选项。