Quantcast
Channel: PowerShell.com – PowerShell Scripts, Tips, Forums, and Resources
Viewing all articles
Browse latest Browse all 8583

XML - how to get attributes of a property and not just the property text.

$
0
0

I am sure this is simple, but I am struggling to get the attributes of an XML property to be displayed. I can get the property text, but I would like the also get the name or display-name attribute values as well.

 

The simple Powershell I am using to get the text is this:

[code]

[xml]$xmlFile1= Get-Content "C:\show__controller_statistics.xml"

$test = $xmlFile1.RESPONSE.OBJECT[0].PROPERTY[0]."#text"

$test1 = $test.ToString()

Write-Host "<value>$test1</value>"

[/code]

 

The above gets me a response of <value>controller_A</value> but I would also like to the the display-name (in this case "Durable ID") saved as another variable?

 

The XML file is

[code]

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

 <RESPONSE VERSION="L100">

 <COMP G="0" P="1"/>  <OBJECT basetype="controller-statistics" name="controller-statistics" oid="1" format="rows">

     <PROPERTY name="durable-id" type="string" size="14" draw="true" sort="string" display-name="Durable ID">controller_A</PROPERTY>

     <PROPERTY name="cpu-load" type="uint32" size="10" draw="true" sort="string" display-name="CPU Load">5</PROPERTY>

     <PROPERTY name="power-on-time" type="uint32" size="22" draw="true" sort="string" display-name="Power On Time (Secs)">6376142</PROPERTY>

     <PROPERTY name="write-cache-used" type="uint32" size="18" draw="false" sort="string" display-name="Write Cache Used">21</PROPERTY>

     <PROPERTY name="bytes-per-second" units="KB" type="string" size="18" draw="true" sort="string" display-name="Bytes per second">5154.8KB</PROPERTY>

     <PROPERTY name="bytes-per-second-numeric" type="uint32" size="18" draw="true" sort="string" display-name="Bytes per second">5154816</PROPERTY>

     <PROPERTY name="iops" type="uint32" size="16" draw="true" sort="string" display-name="IOPS">94</PROPERTY>

     <PROPERTY name="number-of-reads" type="uint64" size="16" draw="true" sort="string" display-name="Number of Reads">5779685975</PROPERTY>

     <PROPERTY name="read-cache-hits" type="uint64" size="16" draw="false" sort="string" display-name="Read Cache Hits">1708899169</PROPERTY>

     <PROPERTY name="read-cache-misses" type="uint64" size="16" draw="false" sort="string" display-name="Read Cache Misses">567658866</PROPERTY>

     <PROPERTY name="number-of-writes" type="uint64" size="16" draw="true" sort="string" display-name="Number of Writes">824134848</PROPERTY>

     <PROPERTY name="write-cache-hits" type="uint64" size="16" draw="false" sort="string" display-name="Write Cache Hits">624783731</PROPERTY>

     <PROPERTY name="write-cache-misses" type="uint64" size="16" draw="false" sort="string" display-name="Write Cache Misses">642082336</PROPERTY>

     <PROPERTY name="data-read" units="TB" type="string" size="16" draw="true" sort="string" display-name="Data Read">65.3TB</PROPERTY>

     <PROPERTY name="data-read-numeric" type="uint32" size="16" draw="true" sort="string" display-name="Data Read">65370081142784</PROPERTY>

     <PROPERTY name="data-written" units="TB" type="string" size="16" draw="true" sort="string" display-name="Data Written">16.7TB</PROPERTY>

     <PROPERTY name="data-written-numeric" type="uint32" size="16" draw="true" sort="string" display-name="Data Written">16752711755264</PROPERTY>

     <PROPERTY name="reset-time" type="string" size="25" draw="true" sort="datetime" display-name="Reset Time">2013-04-30 16:25:54</PROPERTY>

     <PROPERTY name="reset-time-numeric" type="uint32" size="25" draw="true" sort="datetime" display-name="Reset Time">1367339154</PROPERTY>

     <PROPERTY name="start-sample-time" type="string" size="25" draw="false" sort="datetime" display-name="Start Sample Time">2013-07-13 11:30:02</PROPERTY>

     <PROPERTY name="start-sample-time-numeric" type="uint32" size="25" draw="false" sort="datetime" display-name="Start Sample Time">1373715002</PROPERTY>

     <PROPERTY name="stop-sample-time" type="string" size="25" draw="false" sort="datetime" display-name="Stop Sample Time">2013-07-13 11:35:02</PROPERTY>

     <PROPERTY name="stop-sample-time-numeric" type="uint32" size="25" draw="false" sort="datetime" display-name="Stop Sample Time">1373715302</PROPERTY>

   </OBJECT>

 <COMP G="0" P="2"/>  <OBJECT basetype="controller-statistics" name="controller-statistics" oid="2" format="rows">

     <PROPERTY name="durable-id" type="string" size="14" draw="true" sort="string" display-name="Durable ID">controller_B</PROPERTY>

     <PROPERTY name="cpu-load" type="uint32" size="10" draw="true" sort="string" display-name="CPU Load">1</PROPERTY>

     <PROPERTY name="power-on-time" type="uint32" size="22" draw="true" sort="string" display-name="Power On Time (Secs)">6376152</PROPERTY>

     <PROPERTY name="write-cache-used" type="uint32" size="18" draw="false" sort="string" display-name="Write Cache Used">2</PROPERTY>

     <PROPERTY name="bytes-per-second" units="KB" type="string" size="18" draw="true" sort="string" display-name="Bytes per second">484.3KB</PROPERTY>

     <PROPERTY name="bytes-per-second-numeric" type="uint32" size="18" draw="true" sort="string" display-name="Bytes per second">484352</PROPERTY>

     <PROPERTY name="iops" type="uint32" size="16" draw="true" sort="string" display-name="IOPS">35</PROPERTY>

     <PROPERTY name="number-of-reads" type="uint64" size="16" draw="true" sort="string" display-name="Number of Reads">450040354</PROPERTY>

     <PROPERTY name="read-cache-hits" type="uint64" size="16" draw="false" sort="string" display-name="Read Cache Hits">6610002098</PROPERTY>

     <PROPERTY name="read-cache-misses" type="uint64" size="16" draw="false" sort="string" display-name="Read Cache Misses">882864162</PROPERTY>

     <PROPERTY name="number-of-writes" type="uint64" size="16" draw="true" sort="string" display-name="Number of Writes">27971020</PROPERTY>

     <PROPERTY name="write-cache-hits" type="uint64" size="16" draw="false" sort="string" display-name="Write Cache Hits">452666373</PROPERTY>

     <PROPERTY name="write-cache-misses" type="uint64" size="16" draw="false" sort="string" display-name="Write Cache Misses">165556897</PROPERTY>

     <PROPERTY name="data-read" units="GB" type="string" size="16" draw="true" sort="string" display-name="Data Read">4509.2GB</PROPERTY>

     <PROPERTY name="data-read-numeric" type="uint32" size="16" draw="true" sort="string" display-name="Data Read">4509204959232</PROPERTY>

     <PROPERTY name="data-written" units="GB" type="string" size="16" draw="true" sort="string" display-name="Data Written">413.7GB</PROPERTY>

     <PROPERTY name="data-written-numeric" type="uint32" size="16" draw="true" sort="string" display-name="Data Written">413791386624</PROPERTY>

     <PROPERTY name="reset-time" type="string" size="25" draw="true" sort="datetime" display-name="Reset Time">2013-04-30 16:25:55</PROPERTY>

     <PROPERTY name="reset-time-numeric" type="uint32" size="25" draw="true" sort="datetime" display-name="Reset Time">1367339155</PROPERTY>

     <PROPERTY name="start-sample-time" type="string" size="25" draw="false" sort="datetime" display-name="Start Sample Time">2013-07-13 11:30:02</PROPERTY>

     <PROPERTY name="start-sample-time-numeric" type="uint32" size="25" draw="false" sort="datetime" display-name="Start Sample Time">1373715002</PROPERTY>

     <PROPERTY name="stop-sample-time" type="string" size="25" draw="false" sort="datetime" display-name="Stop Sample Time">2013-07-13 11:35:02</PROPERTY>

     <PROPERTY name="stop-sample-time-numeric" type="uint32" size="25" draw="false" sort="datetime" display-name="Stop Sample Time">1373715302</PROPERTY>

   </OBJECT>

 <COMP G="0" P="3"/>  <OBJECT basetype="status" name="status" oid="3">

     <PROPERTY name="response-type" type="string" size="12" draw="false" sort="nosort" display-name="Response Type">Success</PROPERTY>

     <PROPERTY name="response-type-numeric" type="uint32" size="12" draw="false" sort="nosort" display-name="Response Type">0</PROPERTY>

     <PROPERTY name="response" type="string" size="180" draw="true" sort="nosort" display-name="Response">Command completed successfully. (2013-07-13 11:35:02)</PROPERTY>

     <PROPERTY name="return-code" type="sint32" size="15" draw="false" sort="nosort" display-name="Return Code">0</PROPERTY>

     <PROPERTY name="component-id" type="string" size="80" draw="false" sort="nosort" display-name="Component ID"></PROPERTY>

     <PROPERTY name="time-stamp" type="string" size="25" draw="false" sort="datetime" display-name="Time">2013-07-13 11:35:02</PROPERTY>

     <PROPERTY name="time-stamp-numeric" type="uint32" size="25" draw="false" sort="datetime" display-name="Time">1373715302</PROPERTY>

   </OBJECT>

 </RESPONSE>

[/code]

 

Any help will be appreciated.

Thanks

Martin


Viewing all articles
Browse latest Browse all 8583

Trending Articles