使用 Powershell 将启用和禁用的 AD 用户(在两个不同的文件中)导出到 CSV
Export Enabled and Disabled AD Users (in two different files) to CSV with Powershell
我需要使用这些属性分别启用和禁用用户:
- 全名
- 显示名称
- 电子邮件地址
- 描述
- 账户状态
但是我在检索禁用用户时输入正确的属性时遇到问题。你能检查并更正下面的脚本吗?另外,我需要检索具有相同属性的已启用用户。
Import-Module ActiveDirectory
Search-ADAccount –AccountDisabled -UsersOnly |
Select -Property Name,SamAccountName,EmailAddress |
Export-Csv "C:\DisabledADUsers.csv" -NoTypeInformation -Encoding UTF8
Search-ADAccount
returns 只是用户属性的一个子集。通过 Get-ADUser
管道搜索结果以获取所有属性并通过 `Select-Object:
限制输出
$props = 'Name', 'DisplayName', 'EmailAddress', 'Description', 'Enabled'
Search-ADAccount –AccountDisabled -UsersOnly |
Get-ADUser -Properties $props |
Select $props |
Export-Csv "C:\DisabledADUsers.csv" -NoTypeInformation -Encoding UTF8
注意没有 properties/attributes "Full Name" 或 "AccountStatus"。如果你想要自定义属性,你必须自己创建它们 calculated properties.
Search-ADAccount –AccountDisabled -UsersOnly |
Get-ADUser -Properties Name,DisplayName,EmailAddress,Description,Enabled |
Select-Object @{n='Full Name';e={$_.Name}},
DisplayName, EmailAddress, Description,
@{n='AccountStatus';e={@('Disabled','Enabled')[([int]$_.Enabled)]}} |
...
但是,由于您需要启用用户和禁用用户(只是在单独的文件中),因此单独枚举它们没有意义。只需调用 Get-ADUser
并将结果附加到相应的文件。
Get-ADUser -Filter * -Properties Name,DisplayName,EmailAddress,Description,Enabled |
Select-Object @{n='Full Name';e={$_.Name}},
DisplayName, EmailAddress, Description,
@{n='AccountStatus';e={@('Disabled','Enabled')[([int]$_.Enabled)]}} |
ForEach-Object {
$csv = '{0}ADUsers.csv' -f $_.AccountStatus
$_ | Export-Csv $csv -Append -NoType -Encoding UTF8
}
我需要使用这些属性分别启用和禁用用户:
- 全名
- 显示名称
- 电子邮件地址
- 描述
- 账户状态
但是我在检索禁用用户时输入正确的属性时遇到问题。你能检查并更正下面的脚本吗?另外,我需要检索具有相同属性的已启用用户。
Import-Module ActiveDirectory
Search-ADAccount –AccountDisabled -UsersOnly |
Select -Property Name,SamAccountName,EmailAddress |
Export-Csv "C:\DisabledADUsers.csv" -NoTypeInformation -Encoding UTF8
Search-ADAccount
returns 只是用户属性的一个子集。通过 Get-ADUser
管道搜索结果以获取所有属性并通过 `Select-Object:
$props = 'Name', 'DisplayName', 'EmailAddress', 'Description', 'Enabled'
Search-ADAccount –AccountDisabled -UsersOnly |
Get-ADUser -Properties $props |
Select $props |
Export-Csv "C:\DisabledADUsers.csv" -NoTypeInformation -Encoding UTF8
注意没有 properties/attributes "Full Name" 或 "AccountStatus"。如果你想要自定义属性,你必须自己创建它们 calculated properties.
Search-ADAccount –AccountDisabled -UsersOnly |
Get-ADUser -Properties Name,DisplayName,EmailAddress,Description,Enabled |
Select-Object @{n='Full Name';e={$_.Name}},
DisplayName, EmailAddress, Description,
@{n='AccountStatus';e={@('Disabled','Enabled')[([int]$_.Enabled)]}} |
...
但是,由于您需要启用用户和禁用用户(只是在单独的文件中),因此单独枚举它们没有意义。只需调用 Get-ADUser
并将结果附加到相应的文件。
Get-ADUser -Filter * -Properties Name,DisplayName,EmailAddress,Description,Enabled |
Select-Object @{n='Full Name';e={$_.Name}},
DisplayName, EmailAddress, Description,
@{n='AccountStatus';e={@('Disabled','Enabled')[([int]$_.Enabled)]}} |
ForEach-Object {
$csv = '{0}ADUsers.csv' -f $_.AccountStatus
$_ | Export-Csv $csv -Append -NoType -Encoding UTF8
}