使用xcopy排除目录

时间:2012-06-25 17:49:10

标签: windows visual-studio-2010 copy

我有一个.bat文件发布我的VS2010应用程序,然后将文件复制到我的测试网络服务器上的某个位置,所以我不必手动执行。我有几个目录,我不想每次都复制,因为内容不会改变,并且有大量的文件。继承我的xcopy命令:

 XCOPY C:\Publish\NewPCloser\* \\testserver\c$\NewPCloser /s /i /Y /EXCLUDE:c:\exclude.txt

继承我的exclude.txt文件:

  web.config
  c:\Working\PaperlessCloser4.0\PaperlessCloser4.0\Content

它排除了web.config,但它仍然复制了Content文件夹和所有300多个文件。如何排除目录和通过xcopy复制?感谢

3 个答案:

答案 0 :(得分:3)

根据this,要排除目录,您只需将其添加到排除文件中,就像任何其他字符串一样,但它需要在其名称的开头和结尾添加反斜杠。因此,如果您正在复制的目录中有一个名为Content的目录,您应该能够将\ Content \添加到您的排除文件中,它应该忽略其路径包含该字符串的任何文件。

答案 1 :(得分:3)

因为排除文件中的前导路径与指定为XCOPY源的前导路径不匹配。尝试修复排除文件中的路径以匹配。

您可以将排除行更改为只读\Content\,但它会排除在其路径中任何位置\Content\的任何文件。

请注意,XCOPY的/ EXCLUDE:选项执行子串匹配的形式。有时它不够精确,无法获得您想要的结果。你应该考虑使用ROBOCOPY。

答案 2 :(得分:0)

看这里。在非常可能的情况下,发现人员也可能在最坏的情况下打电话给我,Robocopy在我的笔记本电脑上备份%USERPROFILE%的速度大约慢了13半倍(25分钟),而在Windows XP上备份%USERPROFILE%的速度却慢了5分钟以上我测试了一个更快的塔,所有这些都没有从路径副本中删除任何内容。之后,我尝试省略一个文件夹,这显然导致它花费了很多时间。排除AppData可以做到这一点,以使Robocopy获得宽大处理,但在最初的情况下,Robocopy仍然比XCOPY慢4秒钟之多,而/ XD用于通过Robocopy省略AppData。带有XCOPY的/ EXCLUDE对其总时间没有太大影响。使用XCOPY的好处是,我没有遗漏任何东西,它似乎从来不会太慢。如果我们需要整个系统,则可以使用磁盘映像对其进行克隆。如果不省略选择的文件夹,或者确实从源文件夹复制到完全空的备份文件夹,则未定义Robocopy显然是最慢的复制方式。使Robocopy尝试匹配自动开始时间和结束时间的另一种方法是,避免批量复制并在一个单独的文件夹(例如仅下载文件夹)上运行备份,而又不破坏Robocopy的更多内容。 VBS CopyHere方法还不错,并且显示了一个很酷的进度条。我想使用很多选择来制作自己的编。是!我可能想防止覆盖具有相同lastdatemodified时间的任何文件,但是其他时候我想知道是否希望所有数据都被覆盖,以防万一某些黑客或错误更改了lastdatemodified信息。如果您想真正的天才使用代码,就像我说的那样,并且xcopy仍然更快,更容易使用,但是,当我在集中模式下运行Robocopy时,对我来说几乎一样。我也喜欢VBS CopyHere,因为我得到了动画进度条。但是有关在命令Windows上获得最终结果以及何时将其优化的问题:[xcopy / d / e / c / k / y / r“%source%”“%target%”]或[robocopy / mt / np / e“%source%”“%target%” / xo / r:0 / w:0]是目前可信赖的Microsoft Windows最快的主线。大声笑吧?而且我已经看到备份程序卖给Windows 95之前的系统的人做得不好。就像我不知道我在做什么!我妈妈有点白痴。她认为我一生中没有任何凭据。我脑子很认真。我从未复制并粘贴任何这些内容。我就知道哇。 XCOPY复制较少的“空间浪费”不可用的系统数据。 XCOPY实际上没有等待时间来重新运行备份,并且发现不再有新文件。我将其排名第一。您也可以开始备份“程序文件”,这很有趣,因为一旦完成,智能系统就不会覆盖相同的文件。在VB中编写代码将花费更长的时间。使用命令提示仅用1行即可使用XCOPY或Robocopy进行所有操作。谢谢。