这就是我在做的事情:
$cn = Get-ADComputer -filt *
$cred = Get-Credential domain\user
$session = New-PSSession -cn $cn.name -cred $cred
icm -Session $session -ScriptBlock {gpupdate /force}
问题是我真的不需要更新所有PC。我有一个包含90个虚拟机的池,其名称为example-1到example-90。我如何仅定位名称中包含示例的人?
答案 0 :(得分:1)
$cn = Get-ADComputer -Filter "name -like 'example*'"
答案 1 :(得分:0)
我认为这不会起作用。要在Get-ADComputer
上使用过滤器参数,您需要{}
,除非您使用的是-filter *
,否则您不需要$cn = Get-ADComputer -Filter {DistinguishedName -like 'example*'}
。
此外,AD属性不是名称,而是DistinguishedName
这应该有用......
$cn = Get-ADComputer -Filter {DistinguishedName -like 'example*'}
$cred = Get-Credential domain\user
ForEach ($item in $cn) {
$session = New-PSSession -cn $item.name -cred $cred
Invoke-Command -Session $session -ScriptBlock {
gpupdate /force
}
}
此外,您将需要枚举返回的计算机,因为将返回多个对象。这就是您的解决方案应该是这样的:
{{1}}