【发布时间】:2014-02-15 21:22:52
【问题描述】:
我有一个基本上如下所示的 PowerShell 函数:
function DoSomething-ToTask {
[cmdletbinding()]
param(
[parameter(Mandatory=$true)]
[strehg[]]$TaskNums
)
foreach ($TaskNum in $TaskNums) {
do something $TaskNum
}
}
目标是能够使用任意数量的参数从命令行调用此函数。例如,我现在可以这样称呼它:
DoSomething-ToTask 1 2 3
..以后会这样
DoSomething-ToTask 4
第二个例子有效,但第一个无效。从那以后,我了解到我需要像这样传递多个参数:
DoSomething-ToTask (1, 2, 3)
这不是世界上最糟糕的事情,但与第一个例子相比仍然有点痛苦。
有没有办法编写一个适用于“1 2 3”参数示例的 PS 函数?
【问题讨论】:
-
顺便说一句:你不需要
(...)周围的1, 2, 3- 事实上,如果数组元素是 strings,这样做会使语法更加麻烦- 见this answer。
标签: powershell scripting