如何将某些参数传递给PowerShell cmdlet而不重复自己?

时间:2014-07-10 09:44:41

标签: powershell

我需要重复调​​用Invoke-RestMethod,并且一些参数将始终相同,例如UriHeaders。我可以免于再次写-Uri $uri -Headers $headers吗?

(如果我将它包装在一个函数中,我将无法使用Invoke-RestMethod支持的所有参数调用它,是吗?)

2 个答案:

答案 0 :(得分:3)

使用splatting:

$par = @{uri="$uri";headers="$headers"}

invoke-restmethod @par -credential $whatever

答案 1 :(得分:2)

如果你正在运行V3或更高版本,你可以使用$ PSDefaultParamterValues,并将它们设置为Invoke-RestMethod命令的那些参数的默认值。