只有简单的参数可以通过-ArgumentList 来传输,VMSnapshot应当不支持。
至于你说的不想定义多次的问题,可以这样来处理:
#将函数内容定义成脚本块
$myLocalFunc={
param($a,$b)
"$a+$b=$($a+$b)"
}
#在本地调用执行脚本块
& $myLocalFunc 10 9
#在远程机器调用执行脚本块
#这样避免同样的脚本块重复定义多次
Invoke-Command -ScriptBlock $myLocalFunc -ComputerName pstips.net -ArgumentList 10,9
