Как использовать продолжение строки с командой приведенной к [void]? - PullRequest
0 голосов
/ 27 апреля 2018
[void](New-VM -Name $serveur -Template $template -vmhost $vmhost -datastore $datastore.name -description $description -errorvariable erreur -erroraction silentlycontinue)               

Привет, я пытаюсь разбить эту строку, используя `. Работает без [void]. Не работает с [void].

Чего мне не хватает?

Ответы [ 3 ]

0 голосов
/ 27 апреля 2018

Если речь идет только о чистом коде, рассмотрите возможность использования splatting вместо обратных кавычек / продолжения строки.

$newVMArguments = @{
    Name          = $serveur 
    Template      = $template 
    vmhost        = $vmhost 
    datastore     = $datastore.name 
    description   = $description 
    errorvariable = "erreur" 
    erroraction   = [Management.Automation.ActionPreference]::SilentlyContinue
}
[void](New-VM @newVMArguments)       

Out-Null будет работать так же хорошо в этом случае. Splatting упрощает управление кодом, а затем имеет дело с обратными ссылками и тому подобным.

0 голосов
/ 27 апреля 2018

Полезный ответ Мэтта показывает сплаттинг как превосходную альтернативу продолжениям строки с `, полезный ответ boxdog показывает трубопровод к Out-Null как альтернативу приведению к [void] .

Приведение к [void] для подавления вывода команды требует включения его в (...)

Назначение $null, еще одной альтернативы, позволяет избежать этой неловкости:

$null = NewVM -Name $serveur `
              -Template $template `
              ...

Однако, просто чтобы показать, что решение на основе [void] все еще возможно:

[void] (Get-Date `
                -Uformat %s
)
0 голосов
/ 27 апреля 2018

Как насчет использования Out-Null вместо:

New-VM -Name $serveur `
       -Template $template `
       -vmhost $vmhost `
       -datastore $datastore.name `
       -description $description `
       -errorvariable erreur `
       -erroraction silentlycontinue | Out-Null
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...