У меня есть XML-файл, из которого я хочу получить значения с помощью PowerShell Core.
Пример очистки:
<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
<PropertyGroup>
<TargetFrameworks></TargetFrameworks>
<RootNamespace></RootNamespace>
<AssemblyName></AssemblyName>
<Company></Company>
<Authors></Authors>
<Description></Description>
<Copyright></Copyright>
<AssemblyVersion></AssemblyVersion>
<FileVersion></FileVersion>
<Product></Product>
</PropertyGroup>
<PropertyGroup>
<Version>1.0.0</Version>
<RepositoryUrl></RepositoryUrl>
<GeneratePackageOnBuild></GeneratePackageOnBuild>
</PropertyGroup>
</Project>
Я хочу получить значение <Version>
element, который является 1.0.0
.
Я запускаю:
pwsh Select-Xml -Path test.csproj -XPath "//Version"
, который возвращает:
Node Path Pattern
---- ---- -------
Version D:\Downloads\test.csproj //Version
Когда я пытаюсь получить значение в соответствии с документами Microsoft, с:
pwsh Select-Xml -Path test.csproj -XPath "//Version" | Select-Object -ExpandProperty Node
Я получаю следующую ошибку:
Select-Object : Property "Node" cannot be found.
At line:1 char:56
+ ... h test.csproj -XPath "//Version" | Select-Object -ExpandProperty Node
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (:PSObject) [Select-Object], PSArgumentException
+ FullyQualifiedErrorId : ExpandPropertyNotFound,Microsoft.PowerShell.Commands.SelectObjectCommand
Select-Object : Property "Node" cannot be found.
At line:1 char:56
+ ... h test.csproj -XPath "//Version" | Select-Object -ExpandProperty Node
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (Node Path Pattern:PSObject) [Select-Object], PSArgumentException
+ FullyQualifiedErrorId : ExpandPropertyNotFound,Microsoft.PowerShell.Commands.SelectObjectCommand
Select-Object : Property "Node" cannot be found.
At line:1 char:56
+ ... h test.csproj -XPath "//Version" | Select-Object -ExpandProperty Node
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (---- ---- -------:PSObject) [Select-Object], PSArgumentException
+ FullyQualifiedErrorId : ExpandPropertyNotFound,Microsoft.PowerShell.Commands.SelectObjectCommand
Select-Object : Property "Node" cannot be found.
At line:1 char:56
+ ... h test.csproj -XPath "//Version" | Select-Object -ExpandProperty Node
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (Version D:\Download\u2026st.csproj //Version:PSObject) [Select-Object], PSArgumentException
+ FullyQualifiedErrorId : ExpandPropertyNotFound,Microsoft.PowerShell.Commands.SelectObjectCommand
Select-Object : Property "Node" cannot be found.
At line:1 char:56
+ ... h test.csproj -XPath "//Version" | Select-Object -ExpandProperty Node
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (:PSObject) [Select-Object], PSArgumentException
+ FullyQualifiedErrorId : ExpandPropertyNotFound,Microsoft.PowerShell.Commands.SelectObjectCommand
Как получить значение этого элемента XML?