当用户通过以下方式请求帮助时,如何让PowerShell脚本显示帮助:
Get-Help -Name myscript.ps1
或
myscript.ps1 -?
例如,描述我的脚本参数等。
更新了问题
我尝试了建议的答案。但我没有看到预期的产量。
我只是将以下代码添加到myScript.ps1。
<#
.SYNOPSIS
A short description of your script.
.DESCRIPTION
A longer description of your script.
.PARAMETER <-silent>
First parameter is -silent. It will do Collection Bootstrap silently.
.PARAMETER <action>
Second parameter is action. Action could be either bootstrap or join
#>
累了的时候
Get-Help。\ myScript.ps1
,如下所示
NAME
C:\es\dev\myScript.ps1
SYNOPSIS
A short description of your script.
SYNTAX
C:\es\dev\myScript.ps1 [<CommonParameters>]
DESCRIPTION
A longer description of your script.
RELATED LINKS
REMARKS
To see the examples, type: "get-help C:\es\dev\myScript.ps1 -examples".
For more information, type: "get-help C:\es\dev\myScript.ps1 -detailed".
For technical information, type: "get-help C:\es\dev\myScript.ps1 -full".
我期待看到参数的描述。我试过了两个.PARAMETER&lt; -silent&gt;和.PARAMETER -silent。结果相同。怎么了?
处理更多内容后的相关问题更新2
我可以在添加参数部分后看到帮助文件,如下所示: -
param (
[Parameter(ParameterSetName='taskJsonFile', Position=1, Mandatory=$true)]
[String]$taskJsonFile="tasks.json"
)
但是看到完整的帮助文件非常重要我必须使用
Get-help。\ myscript.ps1 -full
否则,它不会显示完整的帮助信息。
但接下来是我的下一个问题。当我尝试 - 完美。它显示了一些不相关的信息。我想省略这些信息以便向用户显示。现在显示如下: -
NAME C:\ ES \ dev的\ myscript.ps1
概要 它以静默方式执行Collection Bootstrapping或基于参数化。
SYNTAX C:\ es \ dev \ myscript.ps1 [[-action]] [[-file]] [[-sasHostname]] []
说明 对于静默操作,用户必须在Eurostep.SAS.Collection Bootstrap.Config.psd1中填充具有所需值的配置文件。这个 配置文件必须存在于 与Eurostep.SAS.CollectionBootstrap.ps1 PowerShell脚本相同的目录。
参数 - 行动
Required? false Position? 2 Default value bootstrap Accept pipeline input? false Accept wildcard characters? false -file <String> Required? false Position? 3 Default value bootstrap_collection.json Accept pipeline input? false Accept wildcard characters? false -sasHostname <String> Required? false Position? 4 Default value http://localhost:5000 Accept pipeline input? false Accept wildcard characters? false <CommonParameters> This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
INPUTS
OUTPUTS
-------------------------- EXAMPLE 1 -------------------------- C:\PS>.\myscript.ps1 For silent Collection Bootstrapping no parameter. It reads values from configuration file myscript.Config.psd1 -------------------------- EXAMPLE 2 -------------------------- C:\PS>.\myscript.ps1 bootstrap bootstrap_collection.json 'http://localhost:5000' All required parameter provided. Note that hostname must be inside ' '. Because it is a link.
相关链接
我不想显示相关链接输入输出等。
无论如何都要从帮助信息中删除它们。使用Even -Full?
答案 0 :(得分:4)
最简单的方法是在脚本中添加基于注释的帮助。这是一个特殊的注释块,使用特定的关键字格式化,然后是这些关键字的关联文本。例如:
<#
.SYNOPSIS
A short description of your script.
.DESCRIPTION
A longer description of your script.
.PARAMETER SomeParameter
A description of the SomeParameter parameter.
.PARAMETER OtherParameter
A description of the OtherParameter parameter. Have as many of these lines as you have parameters.
.EXAMPLE
YourScript.ps1 -SomeParameter 'thing' -OtherParameter 1
Does something. Have as many examples as you think useful.
#>
这些是我默认使用的关键字,但请查看此处描述的完整列表,以供您可能要包含的其他人使用:https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_comment_based_help?view=powershell-5.1