Это все о том, как out-file
работает с переменными XML.Чтобы понять это, вам нужно протестировать его на простой переменной. Допустим, у нас есть переменная
$x="This an XML variable"
.сначала мы выведем эту переменную, используя out-file
, например
$x|out-file -path C:\test.xml
без преобразования ее в XML.Конечно, когда он открывается как XML-файл, он будет пустым, но при редактировании с помощью блокнота будет отображаться введенная нами строка.после этого мы конвертируем в XML, а затем выводим его, как вы делали это в своем коде.
$xXML=$x|convertto-XML
$xXML|out-file C:\test2.xml
Как и раньше, файл XML будет пустым, но при редактировании файла test2.xml он будет содержать что-токак это:
xml Объекты
--- -------
version = "1.0" encoding = "utf-8" Objects
и этот же результат вы увидите, если наберете $xXML
в командной строке.Таким образом, выходной файл просто выводит результаты, которые проходят через конвейер.если вы хотите увидеть представление XML, вам нужно набрать $xXML.innerxml
, я предпочитаю сохранять любые данные XML в файл, используя один из этих методов.
$xXML.save("C:\test3.xml")
ИЛИ
$x |Export.CliXML -path "C:\test4.xml"
Поэтому вместо последней строки в вашем коде вы можете просто набрать
$OutComId | Export-CliXML "$exportPath\combined.xml"