自动完成用户输入PowerShell 2.0

esa*_*120 8 powershell tabs user-input autocomplete powershell-2.0

我有一个庞大的数据列表(超过1000个不同的值),我希望用户能够从PowerShell控制台的列表中选择某些值.

在控制台中允许用户快速选择值的最简单方法是什么?

我想做一些像Tab完成或使用箭头键滚动值的功能,但我不知道如何做这些事情.

任何建议将不胜感激.

rav*_*nth 7

PowerShell选项卡完成可以扩展到自定义参数和参数值(在v3中).但是,这是高级功能的属性.你可以使用它ValidateSetAttribute来做到这一点.

查看有关高级功能的Technet帮助主题:http://technet.microsoft.com/en-us/library/hh847806.aspx

您可以在PowerShell中替换tabexpansion(v2)和tabexpansion2(v3)函数,以自动完成高级函数之外的参数值.您可以通过运行在PowerShell v3中获得此基本定义

 Get-Content function:TabExpansion2
Run Code Online (Sandbox Code Playgroud)

以下是显示自定义选项卡扩展功能的示例.

http://www.powershellmagazine.com/2012/11/29/using-custom-argument-completers-in-powershell-3-0/

但是,如果您希望用户能够自动完成Read-Host某种输入的值,则需要编写代理Read-Host来实现该目的.

您可以选择查看http://powertab.codeplex.com/上的PowerTab模块