【问题标题】:Extract extensionAttribute from Computer properties in Active Directory从 Active Directory 中的计算机属性中提取 extensionAttribute
【发布时间】:2016-07-17 02:05:18
【问题描述】:

域→OU=客户端计算机→OU=位置

每台计算机都有一个 extensionAttribute1 值。

我需要获取每台计算机的extensionAttribute1 并导出为 CSV 文件。

我在下面运行了代码,但无法正确运行。尝试了一些变化,但没有成功。

我先运行了这个(这里没有错误):

$Computers = Get-ADComputer -Filter * -SearchBase "OU=Location,OU=Client Computers,DC=ABC,DC=ABC1" -Properties *

然后我运行了这个:

foreach ($Computer in $Computers) {
  Get-ADComputer $Computer -Filter * -Properties extensionAttribute5 |
    Export-Csv C:\computer_users.csv
}

并得到以下错误:

Get-ADComputer : 找不到接受的位置参数 论据

我尝试过使用括号、逗号、单引号、双引号……就是想不通。

【问题讨论】:

    标签: powershell active-directory


    【解决方案1】:
    Get-ADComputer $Computer -Filter * ...
    

    相同
    Get-ADComputer -Identity $Computer -Filter * ...
    

    如果您查看documentation,您会发现参数-Identity-Filter 是互斥的。此外,无论如何您都不需要循环和第二个Get-ADComputer 调用。只需从您的第一个 Get-ADComputer 调用中选择您想要的属性并将结果通过管道传输到 Export-Csv

    $ou = 'OU=Location,OU=Client Computers,DC=ABC,DC=ABC1'
    
    Get-ADComputer -Filter * -SearchBase $ou -Properties extensionAttribute1 |
      Select-Object Name, extensionAttribute1, ... |
      Export-Csv 'C:\computer_users.csv' -NoType
    

    【讨论】:

    • 谢谢安斯加尔。我今天早上试过了。我收到以下消息 Get-ADComputer:缺少参数“SearchBase”的参数。指定“System.String”类型的参数,然后重试。
    • 我的错误。我将 OU 设为变量以稍微缩短语句,但后来忘记将变量实际添加到命令中。固定。
    • 完美运行。非常感谢安斯加尔。每天学习。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-21
    • 2013-10-27
    • 1970-01-01
    • 1970-01-01
    • 2018-05-05
    • 1970-01-01
    相关资源
    最近更新 更多