0

我对 msbuild 相当陌生,并且对以下问题感到困惑。假设我有以下文件结构:

foo\bin\folder1_OK\file1.txt
foo\bin\folder1_OK\sub\file2.txt
foo\bin\folder2_NOK\file3.txt
bar\bin\folder3_OK\file4.txt

使用 msbuild,我想将名称以“_OK”结尾的所有文件夹和基础内容复制到我的放置位置。我还想摆脱中间的“bin”文件夹。在示例情况下,我希望输出结构为:

foo\folder1_OK\file1.txt
foo\folder1_OK\sub\file2.txt
bar\folder3_OK\file4.txt

这可以在一次操作中实现吗?如果包含属性为“***_OK*”,则 RecursiveDir 元数据仍包含 bin 文件夹。我可以用一个聪明的技巧来解决这个问题吗?还是应该在复制操作后更好地使用连续移动任务?

4

1 回答 1

0

该过程正在根据输入路径+文件名生成目标路径+文件名列表。

如果您使用 MSBuild4 ,您可以使用 Property 函数来使用正则表达式来修改目录名称。

然后您可以使用复制任务来复制这些文件。

如果不使用 msbuild4,则必须编写自定义任务来生成输出列表。

于 2013-06-08T23:00:22.837 回答