Функция Write-Debug PowerShell не выводит массивы, а Write-Output - делает. Это нарочно?

Показанный ниже массив отлично работает как ввод для записи-вывода, но не для записи-отладки (я ожидал, что они будут более похожими). ​​

PS C:\> [string[]]$test = @("test1", "test2", "test3")
PS C:\> Write-Output $test
test1
test2
test3
PS C:\> $DebugPreference = "Inquire"
PS C:\> Write-Debug $test
Write-Debug : Cannot convert 'System.String[]' to the type 'System.String' required by parameter 'Message'. Specified method is not supported.
At line:1 char:12
+ Write-Debug <<<<  $test
    + CategoryInfo          : InvalidArgument: (:) [Write-Debug], ParameterBindingException
    + FullyQualifiedErrorId : CannotConvertArgument,Microsoft.PowerShell.Commands.WriteDebugCommand

PS C:\>

Я думаю об этом. просто неудачный дизайн, но надеемся на разумное объяснение. Правильно ли я использую Write-Debug? Если да, у кого-нибудь есть любимый простой обходной путь?

11
задан Vimes 5 July 2011 в 23:47
поделиться