以前在PowerShell中我们使用远程命令Invoke-Command传递本地变量的时候往往都要在语句块里使用如下,Param() 添加本地变量参数传递。
Invoke-Command -ScriptBlock{
Param($ComputerName)
Get-Process -ComputerName $ComputerName -Name 'Notepad'
}
但是在PowerShell 3.0中,我们就不需要这样了,它新增了一个新的远程变量就是$Using,它与Param不同的是,它会自动做变量匹配,而用Param方式则不会做自动匹配,它所做的是一个变量传递的过程。
它的使用语句如下:
$Using:<VariableName>
让我们看看如何使用,你只需要像以往一样在使用参数时,在固定参数位置以$Using:ComputerName 替换即可。
Invoke-Command -ScriptBlock{
#Param($ComputerName)
Get-Process -ComputerName $Using:ComputerName -Name 'Notepad'
}