powershell - Get-ADGroup 中的格式成员属性

标签 powershell active-directory

我有一个以下 PowerShell 命令,它对我很有用,为我提供了我需要的结果(有关 AD 组及其成员的详细信息)

Get-ADGroup -Filter * -Properties * -SearchBase "CN=Users,DC=domain,DC=com" | 
    Select-Object -Property Name, Description, GroupCategory, Members | 
    Format-Table -AutoSize

但我想将 Members 属性格式化为仅显示用户的 DisplayName,而不是他的整个 LDAP 路径。

Members 属性的输出是:

{CN=John Doe,CN=Users,DC=domain,DC=com, CN=Jane Doe,CN=Users, DC=domain, DC=com,...}

最佳答案

您可以使用计算属性添加自定义代码块,PowerShell 将执行该代码块来计算特定属性的值。

首先,我们知道可以使用以下代码仅选择组中用户的名称:

 get-adgroupmember 'Domain Admins'| select Name

现在,我们可以将其嵌入到之前的“选择对象”命令中,如下所示:

RegularProperty1,RegularProperty2,@{Name='Column Heading';Expression={<code to run>}}

要将其添加到原始选择语句中:

Name, Description, GroupCategory, @{Name='Members';exp={Get-adgroupmember $_.Name | Select -expand Name}}

最终结果如下所示:

Get-ADGroup -Filter * -Properties * | 
   Select-Object -Property Name, Description, GroupCategory,`
  @{Name='Members';exp={Get-adgroupmember $_.Name | Select -expand Name}}  | 
       Format-Table -AutoSize

enter image description here

关于powershell - Get-ADGroup 中的格式成员属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33761112/

相关文章:

powershell - 如何在powershell中获取目录中不同文件的数量?

azure - 如何在计划中的azure函数中运行powershell脚本

active-directory - 如何在 LDAP 上运行范围查询

active-directory - 如何继续为 AWS Cognito 使用 AD FS SAML?

java - 检查在 Java 应用程序中使用 Active Directory 登录的用户

powershell - 如何使用 Powershell 列出在服务器中使用服务帐户运行的所有服务

rest - 使用-OutFile参数时如何在Invoke-WebRequest/Invoke-RestMethod上获取HTTP状态?

azure - 需要 powershell 脚本来启用存储帐户和 key 保管库的诊断日志记录

windows-7 - DNS解析在Web浏览器中失败,但是nslookup成功

ruby-on-rails - 在 Rails 应用程序中使用 Active Directory/LDAP 组获取权限\角色的示例