Что требуется для Powershell 2.0 для отображения значения параметра скрипта по умолчанию на странице справки? - PullRequest
5 голосов
/ 22 июля 2011

У меня есть следующий простой скрипт, который принимает текст в качестве ввода и записывает его на хост.

<#
.SYNOPSIS
    Writes the input string to the host.
.PARAMETER Text
    The text to write to the host.
#>

param([string]$text = "hello world!")
Write-Host $text

Чтобы отобразить справку для этого скрипта, я выполняю следующую команду в сеансе Powershell, где write-text.ps1 - это имя этого скрипта.

get-help .\write-text.ps1 -full

В следующем выводе я ожидаю увидеть значение по умолчанию параметра скрипта, указанное в справке - но я не вижу:

PARAMETERS
    -text <String>
        The text to write to the host.

        Required?                    false
        Position?                    1
        Default value
        Accept pipeline input?       false
        Accept wildcard characters?

Что мне нужно добавить или изменить в этом скрипте, чтобы справочная система отображала значение параметра по умолчанию?

Ответы [ 2 ]

5 голосов
/ 22 июля 2011

Невозможно отобразить значение по умолчанию с помощью справки на основе комментариев. Для этого вам нужно создать файл справки MAML.

3 голосов
/ 22 июля 2011

Справка на основе сценариев может быть разборчивой, такой же простой, как если бы вы указали заглавную букву в тексте справки, но не в самой переменной. Длинный выстрел, я знаю ...

Альтернативой, которую я предпочитаю, является, но описание рядом с параметром:

<#
.SYNOPSIS
MumbleMumble

.DESCRIPTION
Even more MumbleMumble

.EXAMPLE
PS> MumbleMumble
#>

function MumbleMumble
{
   param
   (
      #The in-parameter for MumbleMumble, as text
      $text
   )

   ...
}

Мне нравится этот подход, потому что он помещает описание рядом с параметром - и потому что он, кажется, работает:).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...