这听起来很基础,但是在互联网上找不到任何相关信息。我正在使用msbuild,并在.proj文件中找到了以下行
<ItemGroup>
<PackageFiles Include="$(TopDir)\**\packages.config" />
</ItemGroup>
我知道“。\”表示当前目录,而“ .. \”表示当前目录,但是“ ** \”呢?
答案 0 :(得分:1)
msbuild中的“双星”(即**)与项目一起使用。 这意味着获取所有子目录。在您的示例代码中,它可以理解为:在顶层目录下,获取所有子目录中的所有package.config文件。
最新文档在Microsoft此处: https://docs.microsoft.com/en-us/visualstudio/msbuild/how-to-select-the-files-to-build
答案 1 :(得分:0)
这与CMD或DOS中的路径无关。这是MSBuild通配符的工作方式。您可以阅读关于它们的here。基本上,**
与部分 path 匹配,因此在您的情况下,项包括packages.config
的任何子文件夹中的所有$(TopDir)
。 (并且$(TopDir)
将在其他地方的<PropertyGroup>
中指定。)