【发布时间】:2023-03-11 07:00:01
【问题描述】:
经过数小时的尝试并阅读了这里几乎所有的帖子,我找不到我需要的解决方案。
我想检索广告用户,但只检索特定字段。像这样的:
Area | Enabled | Name | userPrincipalName(email)
问题是,DistinguishedName 字段包含我需要的所有内容,但是当我将其导出为 .CSV 时,它被分成不同的列。
我只能阅读这一行并将其分隔在我需要的列中,但是我遇到了另一个问题,即有些用户的 OU 数超过了 2、3、4。
有没有办法读取,比如只有一个 OU(第一个是我需要的,因为它说 IT、EXPEDITION、ETC)或至少将 CN 作为一个字段,OU 作为另一个字段,然后命名,电子邮件...?
我创建此代码以在 PowerShell 上运行:
Get-ADUser -Filter * -Properties DistinguishedName,SamAccountName,DisplayName,EmailAddress,OfficePhone | Select-Object DistinguishedName,EmailAddress,OfficePhone,DisplayName,SamAccountName | export-csv -path path\to\adusers.csv -NoTypeInformation -Encoding "UTF8"
然后我将它导入到 SQL Server。
【问题讨论】:
-
使用
,以外的分隔符,例如分号:... |Export-Csv -Delimiter ';'- 现在您的 SQLServer 导入不会再在DistinguishedName列中的,上出错 -
感谢解决问题的人。
标签: sql-server powershell active-directory