繁体   English   中英

如何编写一个wrapper powershell命令,将所有参数转发给委托命令?

[英]How do I write a wrapper powershell command that forwards all arguments to a delegate command?

包装器应该只调用委托 ,转发传递给包装器的参数。

特定

.\wrapper.ps1 1 2

delegate.ps1内容:

param($one, $two)
write-host "one=$one and two=$two"

然后期望输出为:

one=1 and two=2

wrapper.ps1内容:

.\delegate # How do I forward all args passed to this wrapper script to the delegate script?

如果我尝试以下wrapper.ps1的实现:

.\delegate $args

输出不正确:

one=1 2 and two=

你在寻找什么是Splatting

使用@符号

.\delegate @args

PowerShell提供了一个ProxyCommand类,旨在ProxyCommand这一过程。 要为命令生成包装函数的文本,比如MyCommand ,您可以这样做

$wrapper = [System.Management.Automation.ProxyCommand]::Create((get-command MyCommand))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM