我正在尝试使用Get-ADComputer
查询域控制器,以获取有关特定计算机的Active Directory信息。此计算机由本地脚本中的变量指定。但是,我无法将局部变量传递给Invoke-Command -ArgumentList
的脚本块,然后传递到-Filter{}
中的Get-ADComputer
块。以下是我认为可行的方法:
$computername = "nicolas"
Invoke-Command -ComputerName DomainController -ScriptBlock {
Get-ADComputer -Filter {name -like "$args[0]"}
} -ArgumentList $computername
但是,$args[0]
变量不会传递到内部过滤器;它传递给初始的scriptblock,但没有更远。它在第一个scriptblock内部定义(我可以正确返回其值),但未在-Filter{}
scriptblock中定义。如何将此变量从本地脚本传递到远程脚本块,再传递到-Filter{}
?
我尝试过$args[]
,$USING:computername
,但似乎都不允许我一直通过它。