Ну, вы не показываете свой оригинальный формат XML.Почему вы закомментировали этот Get-Content?он не будет работать без него.
Итак, если мы возьмем приведенный ниже пример, он будет работать, как и ожидалось.
# Simple XML version
$SimpleXml = $null
$SimpleXml = @"
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<name>Apple</name>
<size>1234</size>
</configuration>
"@
# New node code
[xml]$XmlDoc = Get-Content -Path variable:\SimpleXml
$runtime = $XmlDoc.CreateNode("element","runtime","")
$generated = $XmlDoc.CreateNode("element","generatePublisherEvidence","")
$generated.SetAttribute("enabled","false")
$runtime.AppendChild($generated)
$XmlDoc.configuration.AppendChild($runtime)
$XmlDoc.save("$pwd\SimpleXml.xml")
Get-Content -Path "$pwd\SimpleXml.xml"
# Which creates this:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<name>Apple</name>
<size>1234</size>
<runtime>
<generatePublisherEvidence enabled="false" />
</runtime>
</configuration>
Также Write-Host никогда не нужен, если вы не раскрашиваете экран вывода.Write-Output используется по умолчанию и автоматически записывает данные на экран, независимо от того, указываете ли вы Write-Output или нет.
Итак, все это одно и то же - вывод на экран.
$SomeString = 'hello'
Write-Host $SomeString
Write-Output $SomeString
'hello'
"hello"
$SomeString
"$SomeString"
($SomeString)
("$SomeString")
$($SomeString)
# Results
hello
hello
hello
hello
hello
hello
hello
... но это ваш выбор.