Freigeben über


Start-Transcript

Erstellt einen Datensatz aller oder eines Teils einer PowerShell-Sitzung in einer Textdatei.

Syntax

Start-Transcript
     [[-Path] <String>]
     [-Append]
     [-Force]
     [-NoClobber]
     [-IncludeInvocationHeader]
     [-UseMinimalHeader]
     [-WhatIf]
     [-Confirm] 
     [<CommonParameters>]
Start-Transcript
     [[-LiteralPath] <String>]
     [-Append]
     [-Force]
     [-NoClobber]
     [-IncludeInvocationHeader]
     [-UseMinimalHeader]
     [-WhatIf]
     [-Confirm] 
     [<CommonParameters>]
Start-Transcript
     [[-OutputDirectory] <String>]
     [-Append]
     [-Force]
     [-NoClobber]
     [-IncludeInvocationHeader]
     [-UseMinimalHeader]
     [-WhatIf]
     [-Confirm] 
     [<CommonParameters>]

Beschreibung

Das Cmdlet Start-Transcript erstellt einen Datensatz aller oder eines Teils einer PowerShell-Sitzung in einer Textdatei. Das Transkript enthält alle Befehle, die der Benutzer eingibt, und alle Ausgaben, die auf der Konsole angezeigt werden.

Standardmäßig speichert Start-Transcript das Transkript an folgendem Speicherort unter Verwendung des Standardnamens:

  • Unter Windows: $HOME\Documents
  • Unter Linux oder macOS: $HOME

Der Standarddateiname ist PowerShell_transcript.<computername>.<random>.<timestamp>.txt.

Ab Windows PowerShell 5.0 enthält Start-Transcript den Hostnamen im generierten Dateinamen aller Transkriptionen. Der Dateiname enthält auch zufällige Zeichen in Namen, um potenzielle Überschreibungen oder Duplizierungen zu verhindern, wenn Sie zwei oder mehr Transkriptionen gleichzeitig starten. Das Einschließen des Computernamens ist nützlich, wenn Sie Ihre Transkripte an einem zentralen Ort speichern. Die zufällige Zeichenfolge verhindert das Erraten des Dateinamens, um nicht autorisierten Zugriff auf die Datei zu erhalten.

Wenn die Zieldatei nicht über ein Bytereihenfolgenzeichen (Byte Order Mark, BOM) verfügt, Start-Transcript standardmäßig die Codierung in der Zieldatei Utf8NoBom.

Beispiele

Beispiel 1: Starten einer Transkriptdatei mit Standardeinstellungen

Start-Transcript

Dieser Befehl startet eine Transkription am Standarddateispeicherort.

Beispiel 2: Starten einer Transkriptdatei an einem bestimmten Speicherort

Start-Transcript -Path "C:\transcripts\transcript0.txt" -NoClobber

Dieser Befehl startet eine Transkription in der Transcript0.txt Datei in C:\transcripts. NoClobber Parameter verhindert, dass vorhandene Dateien überschrieben werden. Wenn die Transcript0.txt Datei bereits vorhanden ist, schlägt der Befehl fehl.

Beispiel 3: Starten einer Transkriptdatei mit einem eindeutigen Namen und Speichern in einer Dateifreigabe

Im folgenden Beispiel wird eine Transkriptdatei mit einem Namen erstellt, der eindeutig genug ist, um an einem freigegebenen Speicherort gespeichert zu werden. Der Dateiname wird aus dem Namen des Benutzers, dem Hostnamen des Computers mit PowerShell, der Version von PowerShell und dem Datum und der Uhrzeit erstellt. Das Transkript wird in der \\Server01\Transcripts Dateifreigabe gespeichert.

$sharepath  = '\\Server01\Transcripts'
$username   = $env:USERNAME
$hostname   = hostname
$version    = $PSVersionTable.PSVersion.ToString()
$datetime   = Get-Date -f 'yyyyMMddHHmmss'
$filename   = "Transcript-${username}-${hostname}-${version}-${datetime}.txt"
$Transcript = (Join-Path -Path $sharepath -ChildPath $filename).ToString()
Start-Transcript

Der vollständige Pfad zur Transkriptdatei wird in der $Transcript Einstellungsvariable gespeichert. Weitere Informationen zur $Transcript Einstellungsvariablen finden Sie unter about_Preference_Variables.

Parameter

-Append

Gibt an, dass dieses Cmdlet das neue Transkript am Ende einer vorhandenen Datei hinzufügt. Verwenden Sie den parameter Path, um die Datei anzugeben.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Confirm

Fordert Sie vor dem Ausführen des Cmdlets zur Bestätigung auf.

Typ:SwitchParameter
Aliase:cf
Position:Named
Standardwert:False
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Force

Ermöglicht dem Cmdlet, das Transkript an eine vorhandene schreibgeschützte Datei anzufügen. Bei Verwendung in einer schreibgeschützten Datei ändert das Cmdlet die Dateiberechtigung in Lese-/Schreibzugriff. Das Cmdlet kann keine Sicherheitseinschränkungen außer Kraft setzen, wenn dieser Parameter verwendet wird.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-IncludeInvocationHeader

Gibt an, dass dieses Cmdlet den Zeitstempel protokolliert, wenn Befehle ausgeführt werden.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-LiteralPath

Gibt einen Speicherort für die Transkriptdatei an. Im Gegensatz zum Path-Parameter wird der Wert des LiteralPath--Parameters genau so verwendet, wie er eingegeben wird. Es werden keine Zeichen als Wildcards interpretiert. Wenn der Pfad Escapezeichen enthält, schließen Sie ihn in einfache Anführungszeichen ein. Einfache Anführungszeichen informieren PowerShell, keine Zeichen als Escapesequenzen zu interpretieren.

Typ:String
Aliase:PSPath, LP
Position:0
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-NoClobber

Gibt an, dass dieses Cmdlet keine vorhandene Datei überschreibt. Wenn eine Transkriptdatei im angegebenen Pfad vorhanden ist, überschreibt Start-Transcript die Datei standardmäßig ohne Warnung.

Typ:SwitchParameter
Aliase:NoOverwrite
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-OutputDirectory

Gibt einen bestimmten Pfad und ordner an, in dem ein Transkript gespeichert werden soll. PowerShell weist automatisch den Transkriptnamen zu.

Typ:String
Position:0
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Path

Gibt einen Speicherort für die Transkriptdatei an. Geben Sie einen Pfad zu einer .txt Datei ein. Wildcards sind nicht zulässig. Wenn eines der Verzeichnisse im Pfad nicht vorhanden ist, schlägt der Befehl fehl.

Wenn Sie keinen Pfad angeben, verwendet Start-Transcript den Pfad im Wert der globalen Variablen $Transcript. Wenn Sie diese Variable nicht erstellt haben, speichert Start-Transcript die Transkriptionen im Standardspeicherort und Dateinamen.

Typ:String
Position:0
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-UseMinimalHeader

Stellen Sie dem Transkript anstelle der standardmäßig enthaltenen detaillierten Kopfzeile eine kurze Kopfzeile voran. Dieser Parameter wurde in PowerShell 6.2 hinzugefügt.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-WhatIf

Zeigt, was passiert, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.

Typ:SwitchParameter
Aliase:wi
Position:Named
Standardwert:False
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

Eingaben

None

Sie können keine Objekte an dieses Cmdlet weiterleiten.

Ausgaben

String

Dieses Cmdlet gibt eine Zeichenfolge mit einer Bestätigungsmeldung und dem Pfad zur Ausgabedatei zurück.

Hinweise

Verwenden Sie das Cmdlet Stop-Transcript, um ein Transkript zu beenden.

Um eine gesamte Sitzung aufzuzeichnen, fügen Sie ihrem Profil den Befehl Start-Transcript hinzu. Weitere Informationen finden Sie unter about_Profiles.