Ответ 1
Вы можете попробовать Start-Transcript
и Stop-Transcript
. Он имеет несколько ограничений, например, не захватывает собственный вывод exe. Это также глобально для сеанса PowerShell.
У меня много PowerShell script. Один из основных, который вызывает другие, детские. Эти сценарии PS, в свою очередь, вызывают окна CMD-скриптов, bash скрипты и консольные приложения. Все эти сценарии и приложения пишут сообщения на консоль. Например, сценарии PowerShell используют Write-Host
scriptlet для этой цели.
Вопрос: Как я могу легко перенаправить (отправить) весь этот вывод консоли в какой-то файл, а не оглушить (отменить) этот вывод консоли? Я хочу видеть, что происходит с выхода консоли, а также иметь историю сообщений в файле журнала.
Спасибо.
Вы можете попробовать Start-Transcript
и Stop-Transcript
. Он имеет несколько ограничений, например, не захватывает собственный вывод exe. Это также глобально для сеанса PowerShell.
Вы можете использовать эквивалент tee
для PowerShell: Tee-Object
PS: serverfault.com и/или superuser.com более подходят для такого вопроса.
Я нашел script для захвата вывода консоли: http://gallery.technet.microsoft.com/scriptcenter/e8fbffde-7d95-42d9-81de-5eb3d9c089e0. script возвращает HTML для сохранения цветов.
Единственный большой недостаток - вы должны называть его в конце вашего script, чтобы захватить весь вывод консоли, который он сделал.
Вам, вероятно, потребуется написать собственный хост для этого. Это не очень сложно сделать, но для этого требуется некоторый управляемый код.