Powershell:从脚本中覆盖param块的正确语法是什么?

时间:2013-02-06 13:55:44

标签: parameter-passing powershell-v2.0

我有一个param块param([switch]$csv, [switch]$recurse),我想对脚本中的值进行硬编码,而不是从命令行传递它们。是否像用

替换param块一样简单
$csv="hardcoded value"
$recurse="another hardcoded value" 

或者还有什么我需要注意的吗?

2 个答案:

答案 0 :(得分:1)

如果你永远不需要在命令行中声明它们,那么你应该简单地在代码中对它们进行核心处理,而不是将它们作为参数放入。否则如C.B.所说,您可以声明它们具有默认值并通过声明它来覆盖它。

答案 1 :(得分:0)

也许我错了,但如果我理解得很好,你可以使用默认值:

param([switch]$csv=$true, [switch]$recurse=$false) #$false is default for switch param

如果你不需要$csv param,你需要调用这样的函数:

myfuntion -csv:$false