我正在尝试创建新的PSSession,在远程计算机上导入ActiveDirectory模块,然后将pssession导入到我的本地工作站 - 这很好用。代码如下:
$rs = New-PSSession -ComputerName RemoteMachine
Invoke-Command -Session $rs -scriptblock {import-module ActiveDirectory}
Import-PSSession -Session $rs -Module Active Directory
现在我可以调用ActiveDirectory cmdlet,例如Get-ADUser -Filter *
工作正常。
BUT
我无法将变量传递给ActiveDirectory cmdlet,我无法执行以下操作:
$name = 'John Smith'
Get-ADUser -Filter {name -eq $name}
它说$name
没有定义。我无法将变量传递给Get-ADUser
。
有什么建议吗?
由于
答案 0 :(得分:1)
我现在无法测试它,但尝试使用双引号而不是脚本块,这样变量的值可以在移动到目标之前展开,
Get-ADUser -Filter "name -eq $name"