PowerShell 数组迭代或解析问题?

PowerShell array iteration or parsing problem?

我是 PowerShell 新手。我正在尝试根据用户的职位提取用户的 Active Directory 信息并将其放入 csv 文件中。我有两个对应的数组,$title 和 $csvfile。 $title[0] 对应于 $csvfile[0],$title[1] 对应于 $csvfile[1] 等等。此循环会创建我所有的 .csv 文件,但不会提取任何用户数据。我可以手动将任何 $title 项目输入到脚本中并且它可以工作,但是当用作数组时我什么也得不到。

数组是否添加任何前导或结尾空格、引号、定界符,以及任何可能使 -and 语句无法工作的内容?

$title = @(
   'Director of Nursing'
   'Assistant Director of Nursing'
   'Activities Director'
)
   $csvfile = @(
  'DON'
  'ADON'
  'ACTIVITIES'
)

    for($i=0; $i -lt $title.Count; $i++)
{
    #Get-ADUser -Filter { (Title -like "Director of Nursing")  -and  (Company -like "location1") }| Export-Csv c:\temp$($csvfile[$i]).csv"
    Get-ADUser -filter { (Title -like "$($title[$i])")  -and  (Company -like "Location1") }| Export-Csv "c:\tempPath$($csvfile[$i]).csv"
}

AD 模块重新解析 -Filter 块(并将其转换为适当的 LDAP 过滤器),最可能的解释是当发生这种情况时它无法解析 $($title[$i])

尝试使用字符串过滤器:

Get-ADUser -filter "Title -like '$($title[$i])'  -and  Company -like 'Location1'"| ...