2014-09-18 63 views
0

参数值如果我有这样的提示具有默认

[Parameter(Mandatory=$true, ParameterSetName='InsertException')] 
    [Parameter(Mandatory=$true, ParameterSetName='UpdateException')] 
    [string]$Requestor = ([Environment]::UserDomainName + '\' + [Environment]::UserName), 

参数当有人跑我的剧本就像

.\myscript 

脚本应该提示他的价值......但应该也显示一个默认值。用户可以退格并删除默认值并键入新值。

但是会发生什么情况是,当PowerShell提示用户控制台中的值为空时,即使我正在脚本中分配默认值(如您所见)。

那么如何在提示中有一个默认值?

+0

相关:[powershell强制参数显示默认值](https://stackoverflow.com/questions/39878202/powershell-mandatory-parameter-with-default-value-shown) – 2017-11-11 16:01:30

回答

1

不可以。我认为你可以得到最好的是使用HelpMessage像这样:

[Parameter(Mandatory=$true, 
      ParameterSetName='InsertException', 
      HelpMessage='The default value is foo')] 

然后,当用户遇到的提示,他们键入!?查看帮助信息。

+0

humm ...很好的答案。但我想这是PowerShell本身的限制。 – 2014-09-23 14:46:45