Start-Transcript

Создает запись всех или частей сеанса PowerShell в текстовый файл.

Синтаксис

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

Описание

Командлет Start-Transcript создает запись всех или частей сеанса PowerShell в текстовый файл. Запись включает в себя все команды, вводимые пользователем, и все выходные данные, выводимые в консоли.

По умолчанию сохраняет расшифровку в следующем расположении с помощью имени по умолчанию Start-Transcript :

  • В окне: $HOME\Documents
  • В Linux или macOS: $HOME

Имя файла по умолчанию .PowerShell_transcript.<computername>.<random>.<timestamp>.txt

Начиная с Windows PowerShell 5.0, Start-Transcript содержит имя узла в созданном имени файла всех расшифровок. Имя файла также содержит случайные символы в именах, чтобы предотвратить возможные перезаписи или дублирование при одновременном запуске двух или более расшифровок. Включение имени компьютера полезно при хранении расшифровок в централизованном расположении. Строка случайного символа предотвращает угадывание имени файла, чтобы получить несанкционированный доступ к файлу.

Если целевой файл не имеет метки порядка байтов (BOM), Start-Transcript по умолчанию используется кодировка Utf8NoBom в целевом файле.

Примеры

Пример 1. Запуск файла расшифровки с параметрами по умолчанию

Start-Transcript

Эта команда начинает записывать сеанс в файл в папке по умолчанию.

Пример 2. Запуск файла расшифровки в определенном расположении

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

Эта команда запускает расшифровку в Transcript0.txt файле C:\transcripts. Так как используется параметр NoClobber, команда запрещает перезаписывать существующие файлы. Transcript0.txt Если файл уже существует, команда завершается ошибкой.

Пример 3. Запуск файла расшифровки с уникальным именем и его хранение в общей папке

В следующем примере создается файл расшифровки с уникальным именем, чтобы храниться в общем расположении. Имя файла создается из имени пользователя, имени узла компьютера под управлением PowerShell, версии PowerShell и даты и времени. Расшифровка хранится в общей папке \\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
Start-Transcript

Полный путь к файлу расшифровки хранится в переменной $Transcript предпочтения. Дополнительные сведения о переменной $Transcript предпочтения см. в about_Preference_Variables.

Параметры

-Append

Указывает, что этот командлет добавляет новую расшифровку в конец существующего файла. Используйте параметр Path для указания файла.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

Запрос подтверждения перед выполнением командлета.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Force

Позволяет командлету добавить запись к существующему файлу, доступному только для чтения. При использовании применительно к файлу, доступному только для чтения, этот командлет изменяет разрешения файла, делая его доступным для чтения и записи. Командлет не может переопределить ограничения безопасности при использовании этого параметра.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-IncludeInvocationHeader

Указывает, что этот командлет регистрирует метку времени при выполнении команд.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-LiteralPath

Указывает расположение файла расшифровки. В отличие от параметра Path, значение параметра LiteralPath используется точно так же, как и типизированный параметр. Никакие символы не интерпретируются как знаки подстановки. Если путь содержит escape-символы, заключите его в одинарные кавычки. Одинарные кавычки сообщают PowerShell о том, что никакие символы не интерпретируются как escape-последовательности.

Type:String
Aliases:PSPath, LP
Position:0
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-NoClobber

Указывает, что этот командлет не перезаписывает существующий файл. По умолчанию, если файл расшифровки существует в указанном пути, Start-Transcript перезаписывает файл без предупреждения.

Type:SwitchParameter
Aliases:NoOverwrite
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-OutputDirectory

Указывает определенный путь и папку, в которой нужно сохранить расшифровку. PowerShell автоматически назначает имя расшифровки.

Type:String
Position:0
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Path

Указывает расположение файла расшифровки. Введите путь к файлу .txt . Дикие карта не разрешены. Если ни один из каталогов в пути не существует, команда завершается ошибкой.

Если вы не указываете путь, Start-Transcript использует путь в значении глобальной переменной $Transcript . Если вы не создали эту переменную, Start-Transcript сохраните расшифровки в расположении по умолчанию и имени файла.

Type:String
Position:0
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UseMinimalHeader

Добавьте короткий заголовок к расшифровке вместо подробного заголовка, включенного по умолчанию. Этот параметр был добавлен в PowerShell 6.2.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Показывает, что произойдет при запуске командлета. Командлет не выполняется.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Входные данные

None

Невозможно передать объекты в этот командлет.

Выходные данные

String

Этот командлет возвращает строку, содержащую сообщение подтверждения и путь к выходному файлу.

Примечания

Чтобы остановить расшифровку, используйте Stop-Transcript командлет.

Чтобы записать весь сеанс, добавьте Start-Transcript команду в профиль. Дополнительные сведения см. в разделе about_Profiles.