当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 使用 PowerShell 获取 ADUser 电子邮件地址

作者:精品下载站 日期:2024-12-14 16:41:55 浏览:13 分类:玩电脑

使用 PowerShell 获取 ADUser 电子邮件地址


Windows PowerShell 的 ActiveDirectory 模块包含一组 cmdlet,用于管理 Active Directory 域、配置集、管理 Active Directory 用户(例如 get-aduser 电子邮件地址)、使用 PowerShell 获取用户主体名称。

在这篇博文中,我们将讨论如何使用 PowerShell 脚本获取 Active Directory 电子邮件地址。我们将使用 get-aduser cmdlet 从用户列表中获取广告用户电子邮件地址,并在 CSV 文件中获取广告用户电子邮件地址。

以下步骤描述了如何获取 aduser 电子邮件地址:

导入 ActiveDirectory PowerShell 模块

import-module ActiveDirectory

从 Active Directory 获取 AdUser 属性

在 PowerShell 中,从活动目录获取 aduser 属性,运行以下命令

get-aduser username -properties *

在上面的命令中,提供您想要从活动目录获取广告用户属性的用户名。命令成功运行后,它将从活动目录返回用户属性

例如,让我们考虑一个从活动目录获取 Toms 用户属性的示例,运行以下命令

Get-ADUser Toms -Properties *

在上面的PowerShell脚本中,获取活动目录用户的所有属性并将其打印在控制台上,如下所示

[玩转系统] 使用 PowerShell 获取 ADUser 电子邮件地址

从 Active Directory 获取 aduser 电子邮件地址

要从 Active Directory 获取 aduser 电子邮件地址、显示名称和 samaccountname,请运行以下命令

Get-ADUser -Filter * -Properties EmailAddress,DisplayName, samaccountname| select EmailAddress, DisplayName

上述命令将获取广告用户电子邮件地址、显示名称和 samaccountname。您可以在上述命令中定义以逗号分隔的其他属性。

上述脚本在 PowerShell 中获取用户电子邮件地址的输出如下

[玩转系统] 使用 PowerShell 获取 ADUser 电子邮件地址

酷提示:如何使用 PowerShell 获取广告用户职位!

获取 csv 文件中的广告用户电子邮件地址

要获取 aduser 电子邮件地址、显示名称和 samaccountname 并将其导出到 CSV,请运行以下命令

Get-ADUser -Filter * -Properties EmailAddress,DisplayName, samaccountname| select EmailAddress, DisplayName, samaccountname | Export-CSV D:\PowerShell\Ad_user_email_Address.csv"

上述 Get-ADUser 命令返回用户电子邮件地址、显示名称和 samaccountname,并将所有用户属性从 Active Directory 导出到 CSV 文件。

Export-CSV cmdlet 将用户和电子邮件地址从 Active Directory 导出到指定位置的 CSV 文件。

PowerShell 从 SamAccountName 获取 AdUser 电子邮件地址

在 PowerShell 中,要从具有 samaccountname 的用户列表中获取 aduser 电子邮件地址,请运行以下命令

$users = Get-Content .\samaccountname.txt
$users | ForEach-Object {
    Get-ADUser -Identity $_ -properties mail | Select samaccountname,mail
} | Export-CSV aduserEmails.txt -NoTypeInformation

在上面的 PowerShell 脚本中,第一个命令使用 Get-Content cmdlet 读取包含用户列表的 samaccountname.txt 文件,并将其输出传递给第二个命令。

第二个命令使用 ForEach-Object 迭代 $users 列表,以获取 aduser 电子邮件地址和 samaccountname,并将其输出传递给第三个命令。

第三条命令使用 Export-Csv cmdlet 将用户和电子邮件地址从 Active Directory 导出到 CSV 文件。

从 CSV 文件中具有 samaccountname 的用户列表中获取广告用户电子邮件地址的输出如下

"samaccountname","mail"
"toms","[email "
"ErickJ","[email "
"garyw","[email "
"chrisd","[email "
"adam","[email "

在 PowerShell 中通过电子邮件地址获取 AdUser

如果您想在 PowerShell 中通过电子邮件地址获取 Aduser,请运行以下命令

Get-ADUser -Filter {Emailaddress -eq '[email '}

在上面的 PowerShell 脚本中,Get-AdUser Filter 参数检查 Emailaddress 是否等于指定的电子邮件地址,并从电子邮件地址获取广告用户,如下所示

PS C:\Windows\system32> Get-ADUser -Filter {Emailaddress -eq '[email '}


DistinguishedName : CN=Tom Smith,OU=SALES,DC=SHELLPRO,DC=LOCAL
Enabled           : True
GivenName         : Tom
Name              : Tom Smith
ObjectClass       : user
ObjectGUID        : 1f3a2572-2621-4e47-9bdf-81d1f8172f69
SamAccountName    : toms
SID               : S-1-5-21-1326752099-4012446882-462961959-1103
Surname           : Smith
UserPrincipalName : [email 

PowerShell 从显示名称获取电子邮件地址

要从显示名称获取电子邮件地址,请使用 Get-AdUser Filter 参数检查 DisplayName 是否等于提供的显示名称,并从活动目录获取 aduser。

例如,您有一个 CSV 文件格式的广告用户列表,格式如下

"DisplayName"
"Tom Smith",
"Erick Jones",
"Gary Willy",
"Chirs.Dore"

要按显示名称获取 aduser 的电子邮件地址,请运行以下 PowerShell 脚本

# Import csv file and read display names of user
$UserNames = Import-Csv -Path D:\AdusersList.csv
foreach ($un in $UserNames)
{
    $displayName = $un.DisplayName.Replace(',', ' ')
    Write-Host $displayName
    # Get email address from display name using filter parameter
    Get-Aduser -Filter "DisplayName -eq '$displayName'" -Properties EmailAddress, mail
}

在上面的 PowerShell 脚本中,

使用 Import-Csv cmdlet 读取指定位置上的 aduserlist.csv 文件,获取广告用户列表并将其存储在 $UserNames 变量中

使用 foreach 迭代用户显示名称,并使用 Get-AdUser 过滤器参数检查用户显示名称是否等于提供的显示名称,并从用户显示名称列表中获取电子邮件地址。

获取 AdUser 过滤器电子邮件地址为空

您可以使用 Get-AdUser 过滤器电子邮件地址条件获取电子邮件地址为空的 aduser,如下所示

Get-ADUser -Filter {mail -notlike '*'} -Property EmailAddress  | Select Name,EmailAddress

在上面的 PowerShell 脚本中,它检查电子邮件地址是否为空并返回用户列表。

酷提示:如何在 Active Directory 中使用 Get-AdOrganizationalUnit!

按不为空的电子邮件地址获取 AdUser 过滤器

您可以使用以下脚本通过电子邮件地址不为空来获取广告用户过滤器

Get-ADUser -Filter * -Property EmailAddress | Where { $_.EmailAddress -ne $null }| Select Name,EmailAddress

在上面的 PowerShell 脚本中,它检查 aduser emailaddress 不为空的位置并返回用户列表。

获取 AdUser 经理电子邮件地址

如果您想获取 aduser 经理的电子邮件地址,请使用下面给出的脚本

$user = "garyw"
$Manager = get-aduser $user -properties * | Select -ExpandProperty Manager

get-aduser $Manager -properties * | Select EmailAddress

在上面的 PowerShell 脚本中,

$user 变量存储用户名。

第二个命令使用 Get-AdUser 通过提供 $user 来获取 aduser 管理器对象。

第三条命令使用 Get-AdUser 命令来获取 aduser 经理电子邮件地址。

酷提示:如何获取 Active Directory 用户权限报告!

结论

我希望上述有关如何使用 PowerShell 脚本获取广告用户电子邮件地址的分步指南将帮助您获取广告用户帐户属性。

如上篇文章所述,您可以通过逗号分隔定义属性,并使用 Export-CSV cmdlet 将用户和电子邮件地址列表从 Active Directory 导出到 CSV 文件。

您可以在 ShellGeek 主页上找到有关 PowerShell Active Directory 命令和 PowerShell 基础知识的更多主题。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯