Sends output to a printer.
Out-Printer [[-Name] [<String>]] [-InputObject [<PSObject>]] [<CommonParameters>]
The Out-Printer cmdlet sends output to the default printer or to an alternate printer, if one is specified.
You can pipe any object to Out-Printer.
Out-Printer does not return any objects.
- Print the content of a help topic to the default printer:
PS C:> Get-Content $pshomeabout_signing.help.txt | Out-Printer
This command prints the content of the about_Signing Help topic to the default printer. This example shows you how to print a file, even though Out-Printer does not have a Path parameter.
The command uses the Get-Content cmdlet to get the contents of the Help topic. The path includes $pshome, a built-in variable that stores the installation directory for Windows PowerShell. A pipeline operator (|) passes the results to Out-Printer, which sends it to the default printer.
- Print text to an alternative printer:
PS C:> "Hello, World" | Out-Printer -Name "\Server01Prt-6B Color"
This command prints Hello, World to the Prt-6B Color printer on Server01. This command uses the Name parameter to specify the alternate printer. Because the parameter name is optional, you can omit it.
- Print the full version of a help topic to the default printer:
PS C:> $H = Get-Help -Full Get-WmiObject PS C:> Out-Printer -InputObject $H
These commands print the full version of the Help topic for Get-WmiObject. The first command uses the Get-Help cmdlet to get the full version of the Help topic for Get-WmiObject and stores it in the $H variable. The second command sends the content to the default printer. It uses the InputObject parameter to pass the value of the $H variable to Out-Printer.
You can also refer to Out-Printer by its built-in alias, lp. For more information, see about_Aliases. The cmdlets that contain the Out verb (the Out cmdlets) do not format objects; they just render them and send them to the specified display destination. If you send an unformatted object to an Out cmdlet, the cmdlet sends it to a formatting cmdlet before rendering it. The Out cmdlets do not have parameters for names or file paths. To send data to an Out cmdlet, use a pipeline operator (|) to send the output of a Windows PowerShell command to the cmdlet. You can also store data in a variable and use the InputObject parameter to pass the data to the cmdlet. For more information, see the examples. Out-Printer sends data, but it does not emit any output objects. If you pipe the output of Out-Printer to Get-Member, Get-Member reports that no objects have been specified.