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
сохраняет расшифровку в следующем расположении с помощью имени по умолчанию:
- В Windows:
$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).ToString()
Start-Transcript
Полный путь к файлу расшифровки хранится в переменной предпочтения $Transcript
. Дополнительные сведения о переменной предпочтения $Transcript
см. в about_Preference_Variables.
Параметры
-Append
Указывает, что этот командлет добавляет новую расшифровку в конец существующего файла. Используйте параметр пути, чтобы указать файл.
Тип: | SwitchParameter |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Confirm
Запрашивает подтверждение перед запуском командлета.
Тип: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Force
Позволяет командлету добавлять расшифровку в существующий файл только для чтения. При использовании в файле, доступном только для чтения, командлет изменяет разрешение файла на чтение и запись. Командлет не может переопределить ограничения безопасности при использовании этого параметра.
Тип: | SwitchParameter |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-IncludeInvocationHeader
Указывает, что этот командлет регистрирует метку времени при выполнении команд.
Тип: | SwitchParameter |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-LiteralPath
Указывает расположение файла расшифровки. В отличие от параметра пути значение параметра ЛитерPath используется точно так же, как и типизированный параметр. Символы не интерпретируются как подстановочные знаки. Если путь содержит escape-символы, заключите его в одинарные кавычки. Одинарные кавычки сообщают PowerShell о том, что никакие символы не интерпретируются как escape-последовательности.
Тип: | String |
Aliases: | PSPath, LP |
Position: | 0 |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-NoClobber
Указывает, что этот командлет не перезаписывает существующий файл. По умолчанию, если файл расшифровки существует в указанном пути, Start-Transcript
перезаписывает файл без предупреждения.
Тип: | SwitchParameter |
Aliases: | NoOverwrite |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-OutputDirectory
Указывает определенный путь и папку, в которой нужно сохранить расшифровку. PowerShell автоматически назначает имя расшифровки.
Тип: | String |
Position: | 0 |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Path
Указывает расположение файла расшифровки. Введите путь к файлу .txt
. Подстановочные знаки не разрешены. Если ни один из каталогов в пути не существует, команда завершается ошибкой.
Если путь не указан, Start-Transcript
использует путь в значении глобальной переменной $Transcript
. Если вы не создали эту переменную, Start-Transcript
хранит расшифровки в расположении по умолчанию и имени файла.
Тип: | String |
Position: | 0 |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-UseMinimalHeader
Добавьте короткий заголовок к расшифровке вместо подробного заголовка, включенного по умолчанию. Этот параметр был добавлен в PowerShell 6.2.
Тип: | SwitchParameter |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-WhatIf
Показывает, что произойдет, если командлет выполняется. Командлет не выполняется.
Тип: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
Входные данные
None
Невозможно передать объекты в этот командлет.
Выходные данные
Этот командлет возвращает строку, содержащую сообщение подтверждения и путь к выходному файлу.
Примечания
Чтобы остановить расшифровку, используйте командлет Stop-Transcript
.
Чтобы записать весь сеанс, добавьте команду Start-Transcript
в профиль. Дополнительные сведения см. в about_Profiles.
Связанные ссылки
PowerShell