我创建了一个示例 bat 文件以便拥有一个备份系统。这并没有显示我的意图,但它演示了它。这是我的 bat 文件内容;
xcopy C:\apps\source c:\apps\dest /D /E /C /R /H /I /K /Y
我想要的是这个;
我想将每个更新的文件和子文件夹从源文件夹复制到目标文件夹。这段代码可以吗?谢谢!
答案1
与其他产品相比,Xcopy 的性能和功能还有很多不足之处。
看一下富文本- 它是 Robocopy 的增强版,也是微软的。Richcopy 也是多线程的(Robocopy 直到 Windows 7 版本才变成多线程的),因此它的吞吐量非常令人印象深刻。
http://technet.microsoft.com/en-us/magazine/2009.04.utilityspotlight.aspx
答案2
您需要 /S /E,而不是单独的 /E。
如果它是一个备份系统,您可能不想使用/C 来抑制错误,而是对错误做出反应。
答案3
我建议使用 robocopy,它是 Windows 7 / Server 2008 的一部分。更多信息请参见此处:http://en.wikipedia.org/wiki/Robocopy
该工具提供了许多选项,其中最重要的是“镜像”您的位置并仅复制更改的功能(因此您不必再次进行整个文件转储,如果您处理大量文件,这可以节省大量时间)。
镜像示例,仅复制更改:
robocopy C:\data E:\data /MIR /Z