0

我有一个发布我的 VS2010 应用程序的 .bat 文件,然后将文件复制到我的测试网络服务器上的某个位置,因此我不必手动执行此操作。我有几个目录我不想每次都复制,因为内容不会改变,而且有很多文件。这是我的 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 进行复制?谢谢

4

2 回答 2

3

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

于 2012-06-25T18:24:18.973 回答
3

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

您可以将 exclude 行更改为 simple \Content\,但随后它将排除\Content\路径中任何位置的任何文件。

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

于 2012-06-25T18:36:32.307 回答