我正在尝试运行以下Powershell脚本。
import-module ActiveDirectory
$computers = Get-ADComputer -filter * -SearchBase "OU=myOU,DC=vw,DC=local" | select-object name
Invoke-Command -ComputerName $computers -ScriptBlock {gpupdate /target:Computer}
问题是 $computers
不是一个 string[]
喜欢 -ComputerName
预计。它确实是一个数组 ADComputer
一个叫名字的参数。
# Get-ADComputer -filter * -SearchBase "OU=myOU,DC=vw,DC=local" | select-object name | Format-Custom
class ADComputer
{
name = PC1
}
class ADComputer
{
name = PC2
}
class ADComputer
{
name = PC3
}
获取名称字符串数组的正确方法是什么?如果我在C#,我知道它会
string[] computerNames = computers.Select(computer => computer.name).ToArray();
但我想学习如何正确地在Powershell中做到这一点。