Cmdlet Output Object in Windows PowerShell


What is the output object of a cmdlet in Windows PowerShell?



When PowerShell executes a cmdlet, it actually calls the .NET class that implements the cmdlet.

When the cmdlet class finishes execution, it will return a data object to PowerShell. This allows PowerShell to:

  • Pass the output object to the next cmdlet for further processing, if there is a next cmdlet in the cmdlet pipeline.
  • Convert the output object to a string to be displayed on the console.

For example, the "get-date" cmdlet returns a DateTime object. If you run it at the end of the cmdlet pipeline, the output DateTime object will be converted to a string representing the DateTime object:

PS C:\fyicenter> get-date 07-01-2016

Friday, July 01, 2016 12:00:00 AM

Now, if we pipe the output object into the "format-list" cmdlet, individual properties of the output object will be displayed in a list format:

PS C:\fyicenter> get-date 07-01-2016 | format-list

DisplayHint : DateTime
Date        : 7/1/2016 12:00:00 AM
Day         : 1
DayOfWeek   : Friday
DayOfYear   : 183
Hour        : 0
Kind        : Unspecified
Millisecond : 0
Minute      : 0
Month       : 7
Second      : 0
Ticks       : 636029280000000000
TimeOfDay   : 00:00:00
Year        : 2016
DateTime    : Friday, July 01, 2016 12:00:00 AM


Use Cmdlet Pipeline in Windows PowerShell

"Get-Command -CommandType cmdlet" on Windows PowerShell

Introduction of Windows PowerShell Cmdlet

⇑⇑ Windows PowerShell Tutorials

2016-11-05, 992👍, 0💬