我有下面的腳本,它將創建帶有數據的xml。如何在xml中使用powershell添加數據
============================================== ========================
$xmlPath = "D:\Users\admin\Desktop\Report.xml"
$date = Get-Date -UFormat %m/%d/%Y
if (! (Test-Path $xmlPath))
{
# Create The XML
$global:xmlWriter = New-Object System.XMl.XmlTextWriter($xmlPath,$Null)
$global:xmlWriter.Formatting = "Indented"
$global:xmlWriter.Indentation = "4"
$global:xmlWriter.WriteStartDocument()
$global:xmlWriter.WriteStartElement("Execution")
$global:xmlWriter.WriteStartElement("ExecutedOn")
$global:xmlWriter.WriteAttributeString("Date",$date)
$global:xmlWriter.WriteStartElement("Environments")
Foreach($c in $cEnvironments)
{
$global:xmlWriter.WriteStartElement($c.Environment)
$global:xmlWriter.WriteAttributeString("Red",$c.Red)
$global:xmlWriter.WriteAttributeString("Green",$c.Green)
$global:xmlWriter.WriteAttributeString("Blue",$c.Blue)
$global:xmlWriter.WriteEndElement() #end of $c.Environment
}
$global:xmlWriter.WriteEndElement() #end Environments
$global:xmlWriter.WriteStartElement("ClEnv")
Foreach($c1 in $clEnv)
{
$global:xmlWriter.WriteStartElement($c1.Environment)
$global:xmlWriter.WriteAttributeString("John",$c1.John)
$global:xmlWriter.WriteAttributeString("Mike",$c1.Mike)
$global:xmlWriter.WriteAttributeString("Alex",$c1.Alex)
$global:xmlWriter.WriteEndElement() #end of $c1.Environment
}
$global:xmlWriter.WriteEndElement() #end ExecutedOn
$global:xmlWriter.WriteEndElement() #end execution
$global:xmlWriter.WriteEndDocument() #end document
$global:xmlWriter.Finalize
$global:xmlWriter.Flush()
$global:xmlWriter.Close()
}
else
{
here I need to append the data in existing xml with the same above info but with different value
}
=================== ================================================== = $ cEnvironments $ clEnv變量是數組並具有相關數據。現在我需要在第二天重新運行腳本並檢查文件是否已經存在。這是我正在做的如果命令。如果已經存在,則使用「其他」我要在現有的XML數據與上述相同的信息,但根據第「執行」不同的值附加像下面
給出========== ================================================== ==========
<?xml version="1.0"?>
<?xml-stylesheet type='text/xsl' href='style.xsl'?>
<Execution>
<ExecutionStarted Date="2/19/2014">
<Environments1>
<Colors Red="21" Blue="14" Green="18" />
</Environments1>
<Environments2>
<Names John="21" Mike="14" Alex="18" />
</Environments2>
</ExecutionStarted>
***<ExecutionStarted Date="2/20/2014">
<Environments1>
<Colors Red="2" Blue="56" Green="76" />
<Colors Cyan="31" Brown="32" Black="54" />
</Environments1>
<Environments2>
<Names John="45" Mike="63" Alex="97" />
</Environments2>
</ExecutionStarted>***
</Execution>
謝謝。
可能有人請幫助我在附加XML在上面的代碼 – Farhan