Информация о состоянии Powershell

Каков предписанный метод отображения состояния или информации о ходе выполнения для пользователя из сценария Powershell? Например, "Подключение к базе данных..." Обычно я печатаю в STDERR.

В Powershell есть командлет Write-Progress, но он предназначен для индикатора выполнения.


person Justin R.    schedule 06.11.2009    source источник


Ответы (1)


Вы можете использовать командлет Write-Host. Строки, отображаемые через хост записи, поступают непосредственно в консоль и не считаются частью выходного потока. Например:

function foo {
    Write-Host "Entering foo"
    "Hello World"
    Get-Date
    [Math]::Pi
    Write-Host "Exiting foo"
}

PS> $results = foo
Entering foo
Exiting foo
PS> $OFS = ', '
PS> "Outputting results: $results"
Outputting results: Hello World, 11/05/2009 18:55:24, 3.14159265358979

Обратите внимание, что вывод Write-Host сразу появляется на хосте и не не становится частью выходного потока (или в данном случае - выводом функции foo).

person Keith Hill    schedule 06.11.2009
comment
есть также write-verbose и write-debug для получения дополнительной информации - person James Pogran; 10.11.2009