首页 > 解决方案 > 根据 CSV 中的电子邮件地址将用户移动到其他 OU

问题描述

我有一个包含电子邮件地址的CSV文件(在 AD 中也称为)。我想将用户移动到不同的 OU。我的 CSV 看起来像:

mail
user@company.com
user2@company.com

有人知道如何解决这个问题吗?

我尝试了以下方法:

Import-Module ActiveDirectory
Import-CSV <CSV-file>.csv | % { 
  Get-ADUser $_.mail | Move-ADObject -TargetPath "ou=<Destination OU>,dc=<DOMAIN>,dc=<DC>" -whatif 
}

标签: powershell

解决方案


尝试

Import-Module ActiveDirectory

Import-CSV <CSV-file>.csv | Foreach-Object {
    $user = Get-ADUser -Filter {(mail -eq "$($_.mail)")} -Properties DistinguishedName 
    Move-ADObject -Identity $user.DistinguishedName -TargetPath "ou=<Destination OU>,dc=<DOMAIN>,dc=<DC>" -WhatIf
}

推荐阅读