【问题标题】:How can I Get ADUser如何获取 ADUser
【发布时间】:2015-12-17 16:12:46
【问题描述】:

我正在尝试通过 Powershell 获取 AD 用户帐户,我需要从 csv 导入名称并检索其 AD 结果。

列表仅与“显示名称”一起存储

test.csv

name
Peter Chan
John Wu
Tom Wong

PS 脚本

 $list = Import-Csv '.\test.csv'

foreach ($i in $list) {
    Get-ADUser -Filter "Name -eq '$i.name'"
}

错误

Get-ADUser : Error parsing query: 'Name -eq @{name=Peter Chan}.name' Error Message: 'syntax error' at position: '10'.
At line:2 char:1
+ Get-ADUser -Filter "Name -eq $i.name"
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ParserError: (:) [Get-ADUser], ADFilterParsingException
    + FullyQualifiedErrorId : Error parsing query: 'Name -eq @{name=Peter Chan}.name' Error Message: 'syntax error' at
   position: '10'.,Microsoft.ActiveDirectory.Management.Commands.GetADUser

当我运行 Get-ADUser -Filter "Name -like 'Peter Chan'" 时,我可以得到我想要的结果。显示是数组类型@{name=Peter Chan}.name,代码上需要改什么?

【问题讨论】:

    标签: powershell active-directory


    【解决方案1】:

    变量在字符串而不是属性表达式中得到扩展。

    改变这个:

    Get-ADUser -Filter "Name -eq '$i.Name'"
    

    Get-ADUser -Filter "Name -eq '$($i.Name)'"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-08
      • 1970-01-01
      相关资源
      最近更新 更多