我似乎无法弄清楚这是否可行。我想验证命令行args如果它们缺少args打印一个漂亮的消息。
例如
Param(
[Parameter(Mandatory=$True,HelpMessage="User Name must be specified.")]
[string]$userName
)
现在如果我从命令行运行我的脚本,它仍会在底部打印出这条丑陋的红色消息:
缺少参数'userName'的参数。指定“System.String”类型的参数,然后重试。
如何让它打印HelpMessage
?或者更好的是,用缺少的参数调用我自己的方法。
答案 0 :(得分:0)
我用于此的技术是不创建参数[Parameter(Mandatory=$true)]
,而是设置一个默认值,如果省略该参数,该默认值实际上是要调用的过程:
param (
$foo = (Read-Host "You must supply a foo! Enter foo value:")
)