【问题标题】:Display All Disabled ADUsers and their ADGroup Membership显示所有已禁用的 ADUser 及其 ADGroup 成员身份
【发布时间】:2017-01-27 05:14:48
【问题描述】:

我正在尝试创建一个执行上述操作的脚本,

我做了类似的事情:

Search-ADAccount -AccountDisabled | Export-Csv -Path C:\csv\DisabledUsers.csv -NoTypeInformation
$csv = Import-Csv -Path c:\csv\DisabledUsers.csv
foreach ($SamAccountName in $csv)
{
    Get-ADPrincipalGroupMembership | format table | Export-Csv -Path C:\csv\DisabledUsersGroupM.csv -NoTypeInformation
}

foreach 部分之前它工作正常。似乎没有从 CSV 导入任何值。

我明白了:

cmdlet Get-ADPrincipalGroupMembership 在命令管道位置
为以下参数提供值:
(输入 !? 寻求帮助。)
身份:

我做错了什么?

【问题讨论】:

    标签: powershell csv foreach import


    【解决方案1】:

    您调用Get-ADPrincipalGroupMembership 时没有必需的参数(您要获取其组成员身份的对象的标识)。

    改变

    Get-ADPrincipalGroupMembership
    

    Get-ADPrincipalGroupMembership $SamAccountName
    

    此外,循环内的Export-Csv 会在每次迭代时覆盖输出文件,因此您最终只会得到最后一个用户的组。添加参数-Append 可以避免这种情况。

    话虽如此,更简单的方法可能是这样的管道:

    Search-ADAccount -AccountDisabled |
        Select-Object SamAccountName, @{n='Groups';e={(Get-ADPrincipalGroupMembership $_.SamAccountName | Select-Object -Expand Name) -join ';'}} |
        Export-Csv 'C:\csv\DisabledUsers.csv' -NoType
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-03-22
      • 1970-01-01
      • 2015-04-21
      • 2016-06-05
      • 2016-11-04
      • 2022-01-24
      • 1970-01-01
      相关资源
      最近更新 更多