powershell如何将参数设置为变量

时间:2017-03-28 20:13:16

标签: powershell

Powershell如何将参数设置为变量?

这样的代码:

get-stat -Entity (get-vmhost ) -Disk -Start 'date-time' -Finish 'date-time'

对于参数-Disk,可以使用其他选项。我想通过以下方式将此参数设置为变量,以便我可以选择要运行的内容。

$item = read-host -prompt 'Select Disk, CPU, Network or Common'
get-stat -Entity (get-vmhost ) -$item -Start 'date-time' -Finish 'date-time'

但它无法返回错误消息“无法找到位置参数”

对此有任何解决方案吗?

1 个答案:

答案 0 :(得分:2)

您可以使用PowerShell Splatting捆绑参数的方式发送到命令:

$item = read-host -prompt 'Select Disk, CPU, Network or Common'
$aB = @{$item = $true;
       Entity = (get-vmhost );
       Start = 'date-time';
       Finish  = 'date-time'}
get-stat @aB