PowerShell - Double redirection with Tee-Object

To support me, you can subscribe to the channel, share and like the videos, disable your ad blocker or make a donation. Thank you!

Hello,

Tee-Object performs a double redirection, into standard output and into a file or variable.

This command can be interesting punctually instead of Out-File, it will save you going to open the file check its contents, to export the result while displaying it in the standard output and also to export and send the result in the pipeline.

# This allows you to see directly in the PowerShell console what has been sent to the file (without having to open it to check)
Get-Process |
Tee-Object -FilePath C:\process.txt
# -Append adds to the end of the file
Get-Process |
Tee-Object -FilePath C:\process.txt -Append
# -Variable allows you to redirect to a variable rather than a file
Get-Process |
Tee-Object -Variable Process
Process
# Example of using Tee-Object
# Integration of Tee-Object with redirection to a file and use of standard output via the pipeline
$services = 'wuauserv','appidsvc'
Get-Service -Name $services |
Tee-Object -FilePath 'C:\InfoServices.txt' |
Start-Service
# Integrate Tee-Object with a redirection in a variable and use standard output via the pipeline
$services = 'wuauserv','appidsvc'
Get-Service -Name $services |
Tee-Object -Variable InfoServices |
Start-Service
$InfoServices

Related links