我有一个如下所示的文件夹结构。
我想做的是,遍历子文件夹并找到 feature.xml,如果有的话,最后打印出某个 xml 标签的值。假设 Feature.xml 包含这样的标签
<foo>need to pull this value</foo>
对于这个简单的示例,我只需要打印出“需要提取此值”或 feature.xml 文件的 foo 标记中包含的任何值。
任何帮助或建议将不胜感激。
我有一个如下所示的文件夹结构。
我想做的是,遍历子文件夹并找到 feature.xml,如果有的话,最后打印出某个 xml 标签的值。假设 Feature.xml 包含这样的标签
<foo>need to pull this value</foo>
对于这个简单的示例,我只需要打印出“需要提取此值”或 feature.xml 文件的 foo 标记中包含的任何值。
任何帮助或建议将不胜感激。
如果 foo 开始标签、内容和结束标签都在同一行,试试这个:
Get-ChildItem -Path C:\Mainfolder -Filter Feature.xml -Recurse | % {
if ($_ -match '<foo>(.*?)</foo>') {
$Matches[1]
}
}
如果 foo 是多行的(<foo>
并且</foo>
在不同的行上),试试这个:
Get-ChildItem -Path C:\Mainfolder -Filter Feature.xml -Recurse | % {
$xml = [xml](Get-Content $_.FullName)
$xml.SelectNodes("//foo") | % { $_."#text" }
}