10

select-xmlSharePoint ソリューションからいくつかのものを根絶するために使用しようとしています。多数の機能を含むソリューション ディレクトリがあり、それぞれfeature.xmlを開いて機能の名前を手動で選択し、それらをリストに入れるのではなく、 and を使用して同等のことを行いたいと考えていましpowershellselect-xml

私の試みは次のようになりました:

ls -recurse -filter feature.xml | select-xml "/Feature"

何も得られなかったので、これを試しました:

ls -recurse -filter feature.xml | select-xml "//*"

やるべきことをやったように見えました。ソリューション内のすべての feature.xml ファイルのすべての XML ノードのリストを取得しました。

「//Feature」や「Feature」などの XPath 式を試しましたが、どれも結果が得られませんでした。

私の XPath 式は正しいように思えますが、select-xml の動作は少し戸惑います。なぜこれが起こっているのか誰にも分かりますか?

4

2 に答える 2

8

「デフォルト」の名前空間でさえ、Select-Xml に指定する必要があります。

$ns = @{dns = 'http://schemas.microsoft.com/sharepoint/'}
ls . -r feature.xml | Select-Xml '//dns:Feature' -Namespace $ns
于 2010-11-30T14:36:56.373 に答える
8

問題は xml 名前空間にある可能性があります。-namespaceを使用して、正しい xpath クエリを取得してみてください。

feature.xml ファイルから xmlns を削除し、コマンドを実行して、これをテストします。

于 2010-11-29T23:28:18.787 に答える