我有一个FilesToExclude2.txt文件,其中包含所有类似的排除项:
*.settings
*#*
*.vbproj*
*.csproj*
*\Errors\*
*\Errors
*\_vti_*\*
*\_vti_*
*\CVS\*
Run Code Online (Sandbox Code Playgroud)
在我的任务文件中,有一个复制任务
<Target Name="CustomModuleCopy">
<ItemGroup>
<ModuleFiles Include="$(SolutionModuleName)\$(ProjectModuleName)\**\*.*" />
<FileToExclude Include="$(BasePath)\$(SolutionModuleName)\FilesToExclude2.txt" />
</ItemGroup>
<ReadLinesFromFile File="@(FileToExclude)">
<Output TaskParameter="Lines" ItemName="FileContents" />
</ReadLinesFromFile>
<Copy SourceFiles="@(ModuleFiles)" DestinationFiles="@(ModuleFiles->'$(DestFolder)\$(ProjectModuleName)\%(RecursiveDir)%(Filename)%(Extension)')" Condition="'%(ModuleFiles.Identity)' != @(FileContents)" ContinueOnError="false" />
<!--CallTarget Targets="RemoveCustomModuleConfigFiles" /-->
</Target>
Run Code Online (Sandbox Code Playgroud)
如果复制任务上没有“ condition”属性,则一切正常,但是我不知道如何使用通配符以及是否有可能实现条件
任何帮助都将不胜感激:)这让我吓了几个小时...
msbuild ×1