【问题标题】:string replace over collection of files字符串替换文件集合
【发布时间】:2013-02-25 22:15:37
【问题描述】:

我正在编写一个 MsBuild 脚本来处理配置文件并进行转换。因此,我正在创建一个 .Dev.config 文件的集合:

<ItemGroup>
    <DevConfigFiles Include="..\Source\**\*.Dev.config"/>
</ItemGroup>

这很好用。针对 %(DevConfigFiles.Identity) 执行任务给了我我所期望的。我想使用该集合,并创建一个具有相同文件名的相应集合,但将“.Dev.config”替换为“.config”。

我无法弄清楚完成这项工作的 MsBuild 语法。实现这一目标的最佳方法是什么?

注意:我会考虑获取 *.config 文件列表和对应的 *.Dev.config 文件列表的替代技术,但我真的想了解在集合上调用字符串函数的 MsBuild 语法。这就是让我绊倒的部分。

另一个注意事项:在这种情况下,我不能使用 %(Extension) 元数据,因为它不会删除字符串的“.Dev”部分。它会考虑文件名的那一部分。

【问题讨论】:

    标签: string msbuild


    【解决方案1】:

    类似的 SO 问题,OP 想要获取文件集合并使用基于原始字符串的名称复制它们。

    MSBUild: Copy files with a name based on the original (following a pattern)

    【讨论】:

    • 有趣。我猜这样的事情可以解决我的问题。实验中...
    • @RationalGeek 这对我来说是一个新的。看起来有点像在 xslt 中调用函数。这确实意味着您可以打开一些 .net 库,因此您不必急于编写任务来做一些简单的事情。
    猜你喜欢
    • 1970-01-01
    • 2013-01-28
    • 2023-03-21
    • 2017-11-14
    • 2016-07-24
    • 1970-01-01
    • 1970-01-01
    • 2017-09-04
    相关资源
    最近更新 更多