0

我有一个如下所示的文件夹结构。

文件夹层次结构

我想做的是,遍历子文件夹并找到 feature.xml,如果有的话,最后打印出某个 xml 标签的值。假设 Feature.xml 包含这样的标签

<foo>need to pull this value</foo>

对于这个简单的示例,我只需要打印出“需要提取此值”或 feature.xml 文件的 foo 标记中包含的任何值。

任何帮助或建议将不胜感激。

4

1 回答 1

0

如果 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" } 
}
于 2013-05-07T22:54:58.410 回答