$server = Get-ADComputer -SearchBase "a OU in a domain*" -Filter {Name -like "*79234*"} | Select -Property *
这项工作它可以像我想的那样拉动计算机对象。名称中包含这些数字的计算机对象。
在之前的代码中,我定义了一个
$array[$where] = 79234
$server = Get-ADComputer -SearchBase "a OU in a domain*" -Filter {Name -like "*$($array[$where])*"} | Select -Property *
失败,并没有给我我的比赛。为什么呢?
命令行中“ $($ array [$ where])”= 79234 ..
我通过在搜索
之前创建我要搜索的对象名称来确实使用它$FilterName = "*$($Array[$Where])*"
$server = Get-ADComputer -SearchBase "a OU in a domain*" -Filter {Name -like $filterObjectname} | Select -Property *
给我正确的对象,我认为根本问题是它们在对象之间过去的方式(转换?)但我错过了它。
答案 0 :(得分:0)
看看this tutorial with arrays。你不能像在原来的那样在powershell中定义一个数组元素。
你可以像这样创建一个哈希表:
$array = @{}
然后添加如下元素:
$array.asdf = 'qwert'
或
$array.$where = 'value'
因此,对于您的示例代码,我建议
$array = @{}
$array.$where = 79234
$FilterName = $array.$where