如何在PowerShell函数中添加帮助?

当我们编写程序时,来自非编程领域的 人们经常期望获得与该程序相关的许多可能的帮助。当我们编写函数并声明参数时,不知道参数需要哪种输入的人们通常首先使用Get-Help命令搜索帮助,然后他们仅找到参数而不是其描述。例如,

function TestFunct{
   param(
      #16 Digit Application ID
      [parameter(Mandatory=$true)]
      [String]$AppID,
      #Date in the Unix Format - 2020-10-31T17:12:10+0530
      [String]$Date
   )
}

在上面的示例中,指定了两个参数,并且当用户获得该功能的帮助时,它没有在给出参数说明的地方指定注释。例如,

PS C:\> help TestFunct -Parameter *
-AppID <string>

   Required?                   true
   Position?                   0
   Accept pipeline input?      false
   Parameter set name          (All)
   Aliases                     None
   Dynamic?                    false

-Date <string>

   Required?                   false
   Position?                   1
   Accept pipeline input?      false
   Parameter set name          (All)
   Aliases                     None
   Dynamic?                    false

要从添加注释说明,我们需要将添加基于注释的帮助,需要使用大纲基于注释的帮助。

function TestFunct{
   <#
      .SYNOPSIS
      This is test function for parameter based help
   #>
   param(
      #16 Digit Application ID
      [parameter(Mandatory=$true)]
      [String]$AppID,
      #Date in the Unix Format - 2020-10-31T17:12:10+0530
      [String]$Date
   )
}

现在,当我们检查参数时,我们将获得基于注释的描述。

PS C:\> help TestFunct -Parameter *
-AppID <String>
   16 Digit Application ID

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

-Date <String>
   Date in the Unix Format - 2020-10-31T17:12:10+0530

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