Udostępnij przez


Start-Transcript

Tworzy rekord wszystkich lub części sesji programu PowerShell do pliku tekstowego.

Składnia

ByPath (Domyślna)

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>]

Opis

Polecenie cmdlet Start-Transcript tworzy rekord wszystkich lub części sesji programu PowerShell do pliku tekstowego. Transkrypcja zawiera wszystkie polecenia, które użytkownik wpisze i wszystkie dane wyjściowe wyświetlane w konsoli programu .

Domyślnie Start-Transcript przechowuje transkrypcję w następującej lokalizacji przy użyciu nazwy domyślnej:

  • W systemie Windows: $HOME\Documents
  • W systemie Linux lub macOS: $HOME

Domyślna nazwa pliku to PowerShell_transcript.<computername>.<random>.<timestamp>.txt.

Począwszy od programu Windows PowerShell 5.0, Start-Transcript zawiera nazwę hosta w wygenerowanej nazwie pliku wszystkich transkrypcji. Nazwa pliku zawiera również losowe znaki w nazwach, aby zapobiec potencjalnemu zastępowaniu lub duplikowaniu podczas uruchamiania co najmniej dwóch transkrypcji jednocześnie. Dołączenie nazwy komputera jest przydatne w przypadku przechowywania transkrypcji w centralnej lokalizacji. Losowy ciąg znaków uniemożliwia odgadnięcie nazwy pliku w celu uzyskania nieautoryzowanego dostępu do pliku.

Jeśli plik docelowy nie ma znacznika kolejności bajtów (BOM), Start-Transcript domyślnie Utf8NoBom kodowanie w pliku docelowym.

Przykłady

Przykład 1. Uruchamianie pliku transkrypcji z ustawieniami domyślnymi

Start-Transcript

To polecenie uruchamia transkrypcję w domyślnej lokalizacji pliku.

Przykład 2. Uruchamianie pliku transkrypcji w określonej lokalizacji

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

To polecenie uruchamia transkrypcję w pliku Transcript0.txt w C:\transcripts. parametr NoClobber zapobiega zastąpieniu istniejących plików. Jeśli plik Transcript0.txt już istnieje, polecenie zakończy się niepowodzeniem.

Przykład 3. Uruchamianie pliku transkrypcji o unikatowej nazwie i przechowywanie go w udziale plików

Poniższy przykład tworzy plik transkrypcji o nazwie na tyle unikatowy, aby był przechowywany w lokalizacji udostępnionej. Nazwa pliku jest tworzona na podstawie nazwy użytkownika, nazwy hosta komputera z uruchomionym programem PowerShell, wersją programu PowerShell oraz datą i godziną. Transkrypcja jest przechowywana w udziale plików \\Server01\Transcripts.

$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

Pełna ścieżka do pliku transkrypcji jest przechowywana w zmiennej preferencji $Transcript. Aby uzyskać więcej informacji na temat zmiennej preferencji $Transcript, zobacz about_Preference_Variables.

Przykład 4. Uruchamianie transkrypcji przy użyciu ścieżki względnej w systemach Windows

Jeśli używasz ścieżki względnej z parametrem OutputDirectory w systemie Windows, ścieżka jest względna względem Documents katalogu.

Start-Transcript -Path .\transcripts
Transcript started, output file is C:\Users\username\Documents\.\transcripts\PowerShell_transcript.HOSTNAME.8S6RpEfN.20251105152247.txt

Przykład 5. Uruchamianie transkrypcji przy użyciu ścieżki względnej w systemach innych niż Windows

Jeśli używasz ścieżki względnej z parametrem OutputDirectory w systemach innych niż Windows, ścieżka jest względna względem katalogu macierzystego.

Start-Transcript -Path ./transcripts
Transcript started, output file is /home/username/./transcripts/PowerShell_transcript.hostname.ift21QeV.20251105151236.txt

Parametry

-Append

Wskazuje, że to polecenie cmdlet dodaje nową transkrypcję na końcu istniejącego pliku. Użyj parametru ścieżka, aby określić plik.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Confirm

Prosi o potwierdzenie przed uruchomieniem cmdletu.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:False
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:por

Zestawy parametrów

(All)
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Force

Umożliwia poleceniem cmdlet dołączanie transkrypcji do istniejącego pliku tylko do odczytu. W przypadku użycia w pliku tylko do odczytu polecenie cmdlet zmienia uprawnienia do odczytu i zapisu pliku. Polecenie cmdlet nie może zastąpić ograniczeń zabezpieczeń, gdy ten parametr jest używany.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-IncludeInvocationHeader

Wskazuje, że to polecenie cmdlet rejestruje sygnaturę czasową podczas uruchamiania poleceń.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-LiteralPath

Określa lokalizację pliku transkrypcji. W przeciwieństwie do parametru Path, wartość parametru LiteralPath jest używana dokładnie tak, jak jest wprowadzana. Żadne znaki nie są interpretowane jako symbole wieloznaczne. Jeśli ścieżka zawiera znaki ucieczki, należy ująć ją w pojedynczy cudzysłów. Znaki pojedynczego cudzysłowu informują program PowerShell, aby nie powinien interpretować żadnych znaków jako sekwencji ucieczki.

Właściwości parametru

Typ:String
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:PSPath, LP

Zestawy parametrów

ByLiteralPath
Position:0
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-NoClobber

Wskazuje, że to polecenie cmdlet nie zastępuje istniejącego pliku. Domyślnie, jeśli plik transkrypcji istnieje w określonej ścieżce, Start-Transcript zastąpi plik bez ostrzeżenia.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:NoOverwrite

Zestawy parametrów

(All)
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-OutputDirectory

Określa określoną ścieżkę i folder, w którym ma być zapisywana transkrypcja. Program PowerShell automatycznie przypisuje nazwę transkrypcji. Jeśli używasz ścieżki względnej, ścieżka jest względna względem katalogu Documents w systemie Windows. W systemach Linux i macOS ścieżka jest względna względem katalogu macierzystego.

Właściwości parametru

Typ:String
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

ByOutputDirectory
Position:0
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Path

Określa lokalizację pliku transkrypcji. Wprowadź ścieżkę do pliku .txt. Symbole wieloznaczne nie są dozwolone. Jeśli którykolwiek z katalogów w ścieżce nie istnieje, polecenie zakończy się niepowodzeniem.

Jeśli nie określisz ścieżki, Start-Transcript używa ścieżki w wartości zmiennej globalnej $Transcript. Jeśli ta zmienna nie została utworzona, Start-Transcript przechowuje transkrypcje w domyślnej lokalizacji i nazwie pliku.

Właściwości parametru

Typ:String
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

ByPath
Position:0
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-UseMinimalHeader

Dodaj krótki nagłówek do transkrypcji, zamiast domyślnie dołączanego szczegółowego nagłówka. Ten parametr został dodany w programie PowerShell 6.2.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-WhatIf

Pokazuje, co się stanie, jeśli polecenie cmdlet zostanie uruchomione. Cmdlet nie został uruchomiony.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:False
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:Wi

Zestawy parametrów

(All)
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

CommonParameters

To polecenie cmdlet obsługuje typowe parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction i -WarningVariable. Aby uzyskać więcej informacji, zobacz about_CommonParameters.

Dane wejściowe

None

Nie można przekazywać obiektów do tego cmdletu.

Dane wyjściowe

String

To polecenie cmdlet zwraca ciąg zawierający komunikat potwierdzający i ścieżkę do pliku wyjściowego.

Uwagi

Aby zatrzymać transkrypcję, użyj polecenia cmdlet Stop-Transcript.

Aby zarejestrować całą sesję, dodaj polecenie Start-Transcript do profilu. Aby uzyskać więcej informacji, zobacz about_Profiles.