Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] как правильно определять использование -verbose в скрипте (http://forum.oszone.net/showthread.php?t=341220)

Elven 08-07-2019 14:49 2878773

как правильно определять использование -verbose в скрипте
 
Добиваю один скрипт до удобоваримого не только мной использования, и столкнулся с одной проблемой. Раньше, если верно помню, при включении [cmdletbinding()] перед param мы имели переменные $verbose, $debug и т.д. которые при указании одноименного параметра менялись с false на true, теперь же таких переменных я нащупать не могу (или щупаю их не в правильную сторону), зато переменная $VerbosePreference самостоятельно меняется с SilentlyContinue на Continue (опять же не уверен, но вроде раньше нужно было проверять значение $Verbose и менять $VerbosePreference вручную).
Собственно знать значение $verbose мне нужно только для того, чтобы не выводить лишний раз сообщение а-ля "... используйте ключ -Verbose..." в том случае, если таковой ключ уже введен.
Пока я придумал только такую затычку:
Код:

if ($VerbosePreference -ne 'Continue') {Write-Warning "... используйте ключ -Verbose..."}
но сдается мне что должен быть вариант правильнее.

Elven 08-07-2019 16:47 2878796

Напомнили мне о $PSBoundParameters, с ним все заработало без сомнительных костылей:
Код:

if (!($PSBoundParameters.ContainsKey("Verbose"))) {Write-Warning "... используйте ключ -Verbose..."}


Время: 23:22.

Время: 23:22.
© OSzone.net 2001-