Как я могу обновить значение для использования узла XML PowerShell?

Как я могу изменить значение узла <Test>Test</Test> кому: <Test>Power</Test>?

Пример:

<?xml version="1.0"?>
<configuration>
    <appSettings>
        <add key="DeploymentDate" value="test" />
        <add key="DateOfInitialization" value="Vinoj" />
    </appSettings>
    <Test>Test</Test>
</configuration>

Вот сценарий PowerShell, который я в настоящее время использую:

$configuration = "app.config"
[xml]$xml = New-Object XML
$xml.Load($configuration)
$xml.selectnodes("/configuration/Test") = {"UST"}
$xml.Save($configuration)
10
задан KyleMit 7 October 2015 в 15:47
поделиться

1 ответ

Я не знаю, чего именно вы хотите достичь, но пример должен дать вам представление:

$file = 'c:\temp\aa\ServerService.exe.config'
$x = [xml] (Get-Content $file)
Select-Xml -xml $x  -XPath //root/level |
    % { $_.Node.'#text' = 'test'
        $_.Node.SomeAttribute = 'value'
      }
$x.Save($file)

Вам не нужно использовать .NET для запросов xpath. Просто оставайтесь с PowerShell (с Select-Xml ).
Также обычно загружают XML-файл через Get-Content и преобразуют его в [xml] , который создает XmlDocument и загружает содержимое файла.

25
ответ дан 3 December 2019 в 16:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: