Logging shell sessions to a transcript
You may find it useful at times to record the output of your shell sessions in a log file. This can help you save the history of all the commands you've executed and determine the success or failure of automated scripts. In this recipe, you'll learn how to create a PowerShell transcript.
How to do it...
- To create a transcript, execute the
Start-Transcript
cmdlet:Start-Transcript -Path c:\logfile.txt
- You can stop recording the session using the
Stop-Transcript
cmdlet:Stop-Transcript
How it works...
When starting a PowerShell transcript, you can specify a path and a file name that will be used to record your commands and their output. The use of the -Path
parameter is optional; if you do not provide a file path, the cmdlet will create a transcript file with a random name in the default documents folder in your profile path, as shown in the following screenshot:
When you are done, you can run the Stop-Transcript
cmdlet or simply exit the shell. You can use the -Append
parameter with the Start-Transcript
cmdlet to add a new transcript to an existing log file. When doing so, you'll need to specify the name of the file you want to append to using the -Path
parameter.
You can record your entire session every time you start the Exchange Management Shell by adding the Start-Transcript
cmdlet to your user profile. If you choose to do this, make sure you specify the same log file to use every time the shell starts and use the -Append
parameter so that each session is added to the log file every time.
There's more...
By default, only the output from PowerShell cmdlets will be recorded in your transcript. If you execute an external program, such as the Exchange eseutil.exe
utility, the output from this command will not be saved in your transcript file, even though it was run within the current shell session. You can pipe external programs to the Out-Default
cmdlet and this will force the output to be stored in your transcript.
See also
- Setting up a Profile in Chapter 1, PowerShell Key Concepts