【发布时间】:2022-11-11 01:14:47
【问题描述】:
我在我的机器上运行 powershell v5,我似乎无法运行该命令
GET-HELP -Category Provider。
是否有可以在 v5 中使用的此命令的替代方法,或者它是可用于 v3 Powershell 的命令?
【问题讨论】:
我在我的机器上运行 powershell v5,我似乎无法运行该命令
GET-HELP -Category Provider。
是否有可以在 v5 中使用的此命令的替代方法,或者它是可用于 v3 Powershell 的命令?
【问题讨论】:
虽然Provider 是帮助主题的有效类别,从 Windows PowerShell 5.1 / PowerShell (Core) 7.2.x 开始,PowerShell 附带的所有主题都不再使用 Provider 类别(不再)
下一个最好的事情是用一个基于通配符搜索,使用 Get-Help 的(隐含位置)-Name 参数:
Get-Help *provider*
这将列出名称中带有单词provider 的所有主题,其中包括cmdlet名称中的单词和概念性帮助主题(名称以about_ 开头的主题)。
如果你想将输出限制为匹配概念的帮助主题(正如Get-Help -Category Provider 在 Windows PowerShell 版本中所做的那样v5.1 之前):
Get-Help *provider* -Category HelpFile
# Alternative:
Get-Help about_*provider*
[1]有效类别分别是:Alias,All,Class,Cmdlet,Configuration,DefaultHelp,DscResource,ExternalScript,FAQ,Function,Function,Function,DscResource Glossary、HelpFile、Provider、ScriptCommand,分别对应a的值非公开枚举类型,System.Management.Automation.HelpCategory;您可以通过编程方式获取这些值(TabExpansion2 'Get-Help -Category ' -cursorColumn 19).CompletionMatches.CompletionText。
这Windows PowerShell v5.1 附带的主题/从 PowerShell (Core) 7.2.x 开始的主题涵盖以下类别:Alias,Cmdlet,ExternalScript,Filter,Function,HelpFile,如获得(Get-Help *).Category | % ToString | Sort-Object -Unique
【讨论】:
TabExpansion2 获取CompletionText 的方式。至于 PowerShell 5,我必须添加 -cursorColumn 19,所以它看起来像这样 (TabExpansion2 'Get-Help -Category ' -cursorColumn 19).CompletionMatches.CompletionText,现在在提供的字符串末尾执行制表符完成
-cursorColumn 19;我只在 PowerShell (Core) 7.2.6 中尝试过。我已经相应地更新了答案。
使用 Windows Powershell 5.1。当我查看help Get-Help -full 时,我读到以下内容:
参数
-类别 <System.String[]>
仅显示指定类别中的项目及其别名的帮助。概念文章位于 HelpFile 类别中。
Required? false Position? named Default value None Accept pipeline input? False Accept wildcard characters? false如果我做一个
Get-Help * | Group-Object Category | Select-Object Name,我只会看到以下类别:
- 别名
- 功能
- 外部脚本
- Cmdlet
- 帮助文件
我在 PowerShell v7.2 中获得了相同的类别
【讨论】: