Start-Transcript
Erstellt einen Datensatz aller oder eines Teils einer PowerShell-Sitzung in einer Textdatei.
Syntax
ByPath (Standardwert)
Start-Transcript
[[-Path] <String>]
[-Append]
[-Force]
[-NoClobber]
[-IncludeInvocationHeader]
[-UseMinimalHeader]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
ByLiteralPath
Start-Transcript
[[-LiteralPath] <String>]
[-Append]
[-Force]
[-NoClobber]
[-IncludeInvocationHeader]
[-UseMinimalHeader]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
ByOutputDirectory
Start-Transcript
[[-OutputDirectory] <String>]
[-Append]
[-Force]
[-NoClobber]
[-IncludeInvocationHeader]
[-UseMinimalHeader]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Beschreibung
Das Cmdlet Start-Transcript erstellt einen Bericht über alle oder einen Teil 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:
- 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 keine Byte Order Mark (BOM) hat, wird in der Zieldatei standardmäßig die Kodierung Start-Transcript auf Utf8NoBom gesetzt.
Beispiele
Beispiel 1: Starten einer Transkriptdatei mit Standardeinstellungen
Start-Transcript
Dieser Befehl startet eine Transkription am Standarddateispeicherort.
Beispiel 2: Starten einer Transkriptdatei an einer bestimmten Position
Start-Transcript -Path "C:\transcripts\transcript0.txt" -NoClobber
Dieser Befehl startet ein Protokoll in der Transcript0.txt-Datei in C:\transcripts.
NoClobber-Parameter verhindert, dass vorhandenen 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
Das folgende Beispiel erstellt eine Transkriptdatei mit einem Namen, 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 Einstellungsvariablen $Transcript finden Sie unter about_Preference_Variables.
Beispiel 4: Starten eines Transkripts mithilfe eines relativen Pfads auf Windows-Systemen
Wenn Sie einen relativen Pfad mit dem Parameter OutputDirectory unter Windows verwenden, ist der Pfad relativ zu Ihrem Documents Verzeichnis.
Start-Transcript -Path .\transcripts
Transcript started, output file is C:\Users\username\Documents\.\transcripts\PowerShell_transcript.HOSTNAME.8S6RpEfN.20251105152247.txt
Beispiel 5: Starten eines Transkripts mithilfe eines relativen Pfads auf Nicht-Windows-Systemen
Wenn Sie einen relativen Pfad mit dem OutputDirectory-Parameter auf Nicht-Windows-Systemen verwenden, ist der Pfad relativ zu Ihrem Heimverzeichnis.
Start-Transcript -Path ./transcripts
Transcript started, output file is /home/username/./transcripts/PowerShell_transcript.hostname.ift21QeV.20251105151236.txt
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.
Parametereigenschaften
| Typ: | SwitchParameter |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch.: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
-Confirm
Fordert Sie zur Bestätigung auf, bevor Sie das Cmdlet ausführen.
Parametereigenschaften
| Typ: | SwitchParameter |
| Standardwert: | False |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
| Aliase: | vgl |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch.: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
-Force
Erlaubt dem Cmdlet, die Aufzeichnung an eine vorhandene schreibgeschützte Datei anzuhängen. Bei Anwendung auf eine schreibgeschützte Datei ändert das Cmdlet die Dateiberechtigung in „Lesen/Schreiben“. Das Cmdlet kann keine Sicherheitseinschränkungen außer Kraft setzen, wenn dieser Parameter verwendet wird.
Parametereigenschaften
| Typ: | SwitchParameter |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch.: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
-IncludeInvocationHeader
Gibt an, dass dieses Cmdlet den Zeitstempel protokolliert, wenn Befehle ausgeführt werden.
Parametereigenschaften
| Typ: | SwitchParameter |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch.: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | 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 wurde. Es werden keine Zeichen als Wildcards interpretiert. Wenn der Pfad Escapezeichen enthält, müssen Sie ihn in einfache Anführungszeichen einschließen. Einfache Anführungszeichen informieren PowerShell, Zeichen nicht als Escapesequenzen zu interpretieren.
Parametereigenschaften
| Typ: | String |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
| Aliase: | PSPath, EP |
Parametersätze
ByLiteralPath
| Position: | 0 |
| Obligatorisch.: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | 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.
Parametereigenschaften
| Typ: | SwitchParameter |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
| Aliase: | NoOverwrite |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch.: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
-OutputDirectory
Gibt einen bestimmten Pfad und ordner an, in dem ein Transkript gespeichert werden soll. PowerShell weist den Transkriptnamen automatisch zu. Wenn Sie einen relativen Pfad verwenden, ist der Pfad relativ zu Ihrem Documents Verzeichnis unter Windows. Unter Linux und macOS ist der Pfad relativ zu Ihrem Startverzeichnis.
Parametereigenschaften
| Typ: | String |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
ByOutputDirectory
| Position: | 0 |
| Obligatorisch.: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | 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.
Parametereigenschaften
| Typ: | String |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
ByPath
| Position: | 0 |
| Obligatorisch.: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
-UseMinimalHeader
Fügen Sie dem Transkript anstelle der detaillierten Standardkopfzeile eine kurze Kopfzeile hinzu. Dieser Parameter wurde in PowerShell 6.2 hinzugefügt.
Parametereigenschaften
| Typ: | SwitchParameter |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch.: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
-WhatIf
Zeigt, was passiert, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.
Parametereigenschaften
| Typ: | SwitchParameter |
| Standardwert: | False |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
| Aliase: | Wi |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch.: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
CommonParameters
Dieses Cmdlet unterstützt die allgemeinen Parameter -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction und -WarningVariable. Weitere Informationen findest du unter about_CommonParameters.
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.