You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用PowerShell的Set-ADUser通过邮箱更新AD用户职位?

解决方法:通过邮箱定位AD用户并更新职位

当然可以仅用邮箱地址作为唯一标识完成更新操作。核心思路是先通过邮箱地址查询对应的AD用户对象,再用该对象作为Set-ADUser的标识参数进行更新。

修正后的代码

$csv = Import-Csv -Path "C:\Folder\JobTitles.csv" 

ForEach ($item In $csv) 
{ 
    # 通过邮箱地址查询AD用户
    $adUser = Get-ADUser -Filter {EmailAddress -eq $item.Email} -Properties EmailAddress
    if ($adUser) {
        # 找到用户后更新职位
        Set-ADUser -Identity $adUser -Title $item.Title
        Write-Host "已更新用户 $($adUser.Name) 的职位为 $($item.Title)"
    } else {
        Write-Warning "未找到邮箱为 $($item.Email) 的AD用户"
    }
}

关键说明

  • Get-ADUser -Filter {EmailAddress -eq $item.Email}:以邮箱地址为筛选条件定位AD用户,只要你的AD环境中邮箱地址是唯一的,就能精准匹配目标用户。
  • 加入if ($adUser)判断:避免CSV中存在无效邮箱时触发报错,同时输出操作日志,方便后续排查问题。
  • 直接将查询到的$adUser对象传入Set-ADUser的-Identity参数,无需额外提取SamAccountName字段。

内容的提问来源于stack exchange,提问作者carproblems

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 09:39:55