这个问题在这里已经有答案:
Wrapper function in PowerShell: Pass remaining parameters(3个答案)
Wrapper function for cmdlet - pass remaining parameters(1个答案)
4天前关门了。
如果PowerShell函数 Package 了一个python函数,只要没有指定param块,就可以轻松地用$args传递所有任意参数:
Function scl-hython {
& "$pythonDir\python.exe" myscript.py --some-arg hython $args
}
然而,一旦我指定了一个参数块(带有多个可选的非位置参数),就不再允许额外的任意参数,并且您将得到如下错误:
A positional parameter cannot be found that accepts argument
有没有一种方法可以启用任意参数和显式参数以实现自动完成?
我还应该澄清的是,我使用了多个可选的非位置参数,这种情况似乎没有包含在现有的类似答案中。
1条答案
按热度按时间mkh04yzy1#
要解决此问题,可以使用
ValueFromRemainingArguments
的元数据属性。或者,您可以只使用自动变量
$PSBoundParameters
,并引用其值。