Using the Export-Clixml Cmdlet
Saving Data as an XML File
Of course you can save Windows PowerShell output in XML format; what else would you use the Export-Clixml cmdlet for? This simple command uses the Get-Process cmdlet to retrieve information about all the processes running on the computer. That information is then piped to the Export-Clixml cmdlet, which in turn saves the data as an XML file named C:\Scripts\Test.xml:
Get-Process | Export-Clixml c:\scripts\test.xml
The resulting XML file will look something like this:
By default Export-Clixml overwrites any existing copy of C:\Scripts\Test.xml. If you’d prefer not to overwrite Test.xml then simply include the -noclobber parameter in your command:
Get-Process | Export-Clixml c:\scripts\test.xml -noclobber
If you run this command and Test.xml already exists you’ll get back the following error message:
Export-Clixml : File C:\scripts\test.xml already exists and NoClobber was specified.
And, no, the Scripting Guys didn’t come up with the name NoClobber. But we wish we had!