Powershell: PSDebug в Transcript еще не отображается терминалом? - PullRequest
2 голосов
/ 04 марта 2011

При запуске моего скрипта я хочу, чтобы вывод «Set-PSDebug -Trace2» отображался в моей транскрипте, но сам терминал оставался таким же, как если бы PSDebug был выключен.
Возможно ли это?

C: /test/test.ps1 содержит:

Set-PSDebug -Trace 2
Start-Transcript C:\test\transcript.txt -append
$Test = "This is just a test"
"$Test"

Я запускаю его так:

& 'C:/test/test.ps1'

при запуске терминала отображает это:

PS C:\Users\Admin> & 'C:/test/test.ps1'
Transcript started, output file is C:\test\transcript.txt
DEBUG:    4+ $Test = <<<<  "This is just a test"
DEBUG:     ! SET $Test = 'This is just a test'.
DEBUG:    5+ "$Test" <<<<
This is just a test
DEBUG:    2+         $foundSuggestion = <<<<  $false
DEBUG:     ! SET $foundSuggestion = 'False'.
DEBUG:    4+         if <<<< ($lastError -and
DEBUG:   15+         $foundSuggestion <<<<
PS C:\Users\Admin>

И «transcript.txt» отображает то же самое.

Итак, еще раз, мой вопрос: возможно ли, чтобы терминал не отображал информацию DEBUG: info во время отображения транскрипта, и если да, то как это сделать.
Заранее спасибо!

1 Ответ

1 голос
/ 07 марта 2011

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...