专家们,
下面是代码的一部分,我试图找到在代码中输入的重复行。
<InputParameters>
<Parameter Name="Team-Manager" Value="Team-Manager"/>
<Parameter Name="Team-Lead" Value="Team-Lead"/>
<Parameter Name="Officer" Value="Y"/>
<Parameter Name="Officer" Value="Y"/>
</InputParameters>
没有错误,但输出也没有返回任何结果。
PS C:\Desktop\Path1\xml> Get-ChildItem -Filter *.xml |Select-Xml -XPath '//*[count(./Officer) > 1]'
PS C:\Desktop\Path1\xml>
PS C:\Desktop\Path1\xml> Get-ChildItem -Filter *.xml |Select-Xml -XPath '//*[count[@Name="Officer"][@Value="Y"] > 1]'
PS C:\Desktop\Path1\xml>
发布于 2021-10-18 15:18:22
您可以使用XPath count()
函数来标识具有多个<address>
子节点的<UNIVERSITY>
节点:
Get-ChildItem -Filter *.xml |Select-Xml -XPath '//address[count(./UNIVERSITY) > 1]'
如果<address>
节点可能有效地具有多个不同的<UNIVERSITY>
条目,请使用Group-Object
测试重复项:
Get-ChildItem -Filter *.xml |Select-Xml -XPath '//address[count(./UNIVERSITY) > 1]' |Where-Object {
@($_.Node.UNIVERSITY |Group-Object -NoElement |Where-Object Count -gt 1).Count -gt 0
}
https://stackoverflow.com/questions/69618436
复制相似问题