CLIXML – a special type of XML
You've seen how we can use Export-CSV
to write objects to a file and that we can read these objects back using Import-CSV
. One limitation of using the CSV format is that it is a flat format, meaning that you get a list of properties that have simple values. If you need to output arbitrary objects to a file and need to store more interesting values than strings, you should probably look at the CLIXML cmdlets, Export-CLIXML
and Import-CLIXML
. CLIXML is an XML-based format to serialize objects.
When you export objects using Export-CLIXML
, it looks at the list of properties that may be value properties (such as string
or int
values) or they may be objects themselves. If they are objects, Export-CLIXML
will look at the properties of the properties. It will continue this process until it reaches a predetermined depth. The default value of depth is "2", but you can override this using the –Depth
parameter.
To see how this works, let's get a particular service and export...