Start-Transcript

Creates a record of all or part of a Windows PowerShell session to a text file.
Start-Transcript [[-Path] <String>] [-Append] [-Force] [-IncludeInvocationHeader] [-NoClobber] [-OutputDirectory[<String>]] [-Confirm] [-WhatIf] [<CommonParameters>]
Start-Transcript [[-LiteralPath] <String>] [-Append] [-Force] [-IncludeInvocationHeader] [-NoClobber][-OutputDirectory [<String>]] [-Confirm] [-WhatIf] [<CommonParameters>]

The Start-Transcript cmdlet creates a record of all or part of a Windows PowerShell session to a text file. The transcript includes all command that the user types and all output that appears on the console.

Starting in Windows PowerShell 5.0, Start-Transcript includes the host name in the generated file name of all transcripts. This is especially useful when your enterprise’s logging is centralized. Files that are created by the Start-Transcript cmdlet include random characters in names to prevent potential overwrites or duplication when two or more transcripts are started simultaneously. This also prevents unauthorized discovery of transcripts that are stored in a centralized file share. Additionally in Windows PowerShell 5.0, the Start-Transcript cmdlet works in Windows PowerShell ISE.

Parameters
-Append [<SwitchParameter>]

Indicates that this cmdlet adds the new transcript to the end of an existing file. Use the Path parameter to specify the file.

-Force [<SwitchParameter>]

Allows the cmdlet to append the transcript to an existing read-only file. When used on a read-only file, the cmdlet changes the file permission to read-write. The cmdlet cannot override security restrictions when this parameter is used.

-IncludeInvocationHeader [<SwitchParameter>]

Indicates that this cmdlet logs the time stamp when commands are run.

-NoClobber [<SwitchParameter>]

Indicates that this cmdlet will not overwrite of an existing file. By default, if a transcript file exists in the specified path, Start-Transcript overwrites the file without warning.

-OutputDirectory [<String>]

Specifies a specific path and folder in which to save a transcript. Windows PowerShell automatically assigns the transcript name.

-Path <String>

Specifies a location to the transcript file. Enter a path to a .txt file. Wildcards are not permitted.

If you do not specify a path, Start-Transcript uses the path in the value of the $Transcript global variable. If you have not created this variable, Start-Transcript stores the transcripts in the $HomeMy Documents directory as PowerShell_transcript.<time-stamp>.txt files.

If any of the directories in the path do not exist, the command fails.

-LiteralPath <String>

Specifies a location to the transcript file. Unlike the Path parameter, the value of the LiteralPath parameter is used exactly as it is typed. No characters are interpreted as wildcards. If the path includes escape characters, enclose it in single quotation marks. Single quotation marks inform Windows PowerShell not to interpret any characters as escape sequences.

-Confirm [<SwitchParameter>]

  • Default value is false

Prompts you for confirmation before running the cmdlet.Prompts you for confirmation before running the cmdlet.

-WhatIf [<SwitchParameter>]

  • Default value is false

Shows what would happen if the cmdlet runs. The cmdlet is not run.Shows what would happen if the cmdlet runs. The cmdlet is not run.

<CommonParameters>

This cmdlet supports the common parameters: Verbose, Debug,ErrorAction, ErrorVariable, WarningAction, WarningVariable,OutBuffer, PipelineVariable, and OutVariable.

Inputs

None

You cannot pipe objects to this cmdlet.

Outputs

System.String

This cmdlet returns a string that contains a confirmation message and the path to the output file.

Examples
  1. Start a transcript file with default settings:
    PS C:> Start-Transcript
    

    This command starts a transcript in the default file location.

  2. Start a transcript file at a specific location:
    PS C:> Start-Transcript -Path "C:transcriptstranscript0.txt" -NoClobber
    

    This command starts a transcript in the Transcript0.txt file in C:transcripts. Since the NoClobber parameter is used, the command prevents any existing files from being overwritten. If the Transcript0.txt file already exists, the command fails.

Additional Notes
 To stop a transcript, use the Stop-Transcript cmdlet.

 To record an entire session, add the Start-Transcript command to your profile. For more information, see 
 about_Profiles.
Related Links

Stop-Transcript