Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 生成事件:复制除一个文件之外的文件夹_.net_Visual Studio - Fatal编程技术网

.net 生成事件:复制除一个文件之外的文件夹

.net 生成事件:复制除一个文件之外的文件夹,.net,visual-studio,.net,Visual Studio,在生成事件中,我需要复制除一个特定文件之外的整个文件夹。有可能吗?分两步进行 首先将整个文件夹复制到新位置 第二,从新创建的文件夹中删除文件XCopy支持执行所需操作的/Exclude标志 从帮助xcopy: /EXCLUDE:file1[+file2][+file3]... 指定包含字符串的文件列表。每个字符串应在文件中的单独一行中。当任何字符串与要复制的文件的绝对路径的任何部分匹配时,将从复制中排除该文件。例如,指定像\obj\或.obj这样的字符串将分别排除目录obj下的所有文件或扩展名

在生成事件中,我需要复制除一个特定文件之外的整个文件夹。有可能吗?

分两步进行

首先将整个文件夹复制到新位置


第二,从新创建的文件夹中删除文件

XCopy支持执行所需操作的
/Exclude
标志

帮助xcopy

/EXCLUDE:file1[+file2][+file3]...
指定包含字符串的文件列表。每个字符串应在文件中的单独一行中。当任何字符串与要复制的文件的绝对路径的任何部分匹配时,将从复制中排除该文件。例如,指定像\obj\或.obj这样的字符串将分别排除目录obj下的所有文件或扩展名为.obj的所有文件

因此,您将创建一个包含要排除的文件列表的文件(每行一个),并在xcopy命令行上指定排除文件

Robocopy还具有文件排除支持

机器人复制/?

/XF file [file]...
排除与给定名称/路径/通配符匹配的文件


这不需要额外的排除文件。您可以指定一个模式。

这可以通过三个简单的步骤完成:

  • 创建一个文件,即exclude.txt
  • 添加要排除的文件名
  • 使用以下命令:
    xcopy源目标/exclude:exclude.txt
  • 您可以在源代码管理中保留exclude.txt


    提示:如果目标是一个目录,在它后面附加
    \*
    ,那么
    xcopy
    会理解它是一个目录而不是一个文件。

    这一切都很好,除非该文件像ISO一样巨大。(除了在大文件的情况下,我更喜欢这个解决方案,因为您不必点击文档就能理解它)当文件触发目标上的某些内容(如web.config)或覆盖您希望保留在目标上的内容(同样:如web.config或其他配置文件)时,我不会使用这个解决方案。