powershell - 使用 PowerShell 更新特定 OU 中 AD 中的用户
问题描述
假设我在 OU 树下:
数据管理 └─国家 ├─德国 │ └─用户 │ ├─笔记本电脑 │ └─电脑 ├─法国 │ └─用户 │ ├─笔记本电脑 │ └─电脑 等等
我想更新 OU 中的特定容器,例如法国笔记本电脑组中的用户。如果我想从 CSV 导入用户,该怎么做?下面的代码检查并更新所有OU。不幸的是,我不知道如何选择特定的容器。有什么建议么?
Import-Module ActiveDirectory
$Userscsv = Import-Csv D:\areile\Desktop\adtest.csv
foreach ($User in $Userscsv) {
Set-ADUser $User.SamAccountName -Replace @{
Division = $User.Division;
Office = $User.Office;
City = $User.City
}
}
解决方案
啊,如果您当时向我们展示了 csv 的(部分)内容,那将会有所帮助。
但是,我认为这对你有用:
Import-Module ActiveDirectory
$UsersCsv = Import-Csv D:\areile\Desktop\adtest.csv
$SearchBase = "<DISTINGHUISHEDNAME-OF-THE-FRENCH-USERS-OU>"
foreach ($usr in $UsersCsv) {
$adUser = Get-ADUser -Filter {EmailAdress -eq '$($usr.Email)'} -SearchBase $SearchBase -Properties Division,Office,City,EmailAddress
if ($null -ne $adUser) {
Set-ADUser $adUser.SamAccountName -Replace @{Division = $usr.Division; Office = $usr.Office; City = $usr.City}
}
}
推荐阅读
- python - 使用正则表达式提取文本忽略模式?
- javascript - ytdl-core:“文件”参数必须是字符串类型。收到一个对象实例
- c# - 在 WPF xaml 中查找绑定的实现
- python - 如何使用py脚本根据kibana中的时间戳获取所有以前的数据?(它每次都覆盖)
- excel - 将多个工作簿中的一行复制粘贴到主工作簿
- r - 导致此错误的原因:错误 cSPADE 算法 'eid' 无效
- java - 出现错误“无法建立与节点 -1 的连接。代理可能不可用。” 在使用 kafka KStream 时
- javascript - 当我在模式中编辑评论然后返回到评论模式并删除它时出现意外错误
- javascript - 如何在react js中取消选中删除其标签的选中元素
- r - 识别数据框中的以下日期组