如何使用PowerShell和CSV导入更新AD用户?

时间:2015-04-09 15:43:35

标签: powershell csv active-directory

我正在尝试使用此PowerShell脚本来更新AD用户。理想情况下,我会更新一堆属性,但是现在我只是想让它更新部门,这样我就知道它是否正常工作。

Import-Module ActiveDirectory  

$dataSource=import-csv "c:\ADupdate.csv"
foreach($dataRecord in $datasource) {
$employeeID=$dataRecord.employeeID

# List of attributes to update
$department=$dataRecord.department

Get-ADUser -SearchBase "ou=Test,ou=OurUsers,ou=Logins,dc=domain,dc=com" -Identity $employeeID -Properties department | Set-ADUser -Replace @{department=$department}

}

1 个答案:

答案 0 :(得分:0)

弄清楚我自己的问题。如果其他人有兴趣,这就是我最终使用的内容......虽然我使用了很多属性。

    Import-Module ActiveDirectory  

$users = Import-Csv -Path c:\update.csv

foreach ($user in $users) {
Get-ADUser -Filter "employeeID -eq '$($user.employeeID)'" -Properties * -SearchBase "ou=Test,ou=OurUsers,ou=Logins,dc=domain,dc=com" |
Set-ADUser -employeeNumber $($user.employeeNumber) -department $($user.department) -title $($user.title) -office $($user.office) -streetAddress $($user.streetAddress) -City $($user.City) -state $($user.state) -postalCode $($user.postalCode) -OfficePhone $($user.OfficePhone) -mobile $($user.mobile) -Fax $($user.Fax) -replace @{"extensionAttribute1"=$user.extensionAttribute1; "extensionAttribute2"=$user.extensionAttribute2; "extensionAttribute3"=$user.extensionAttribute3}
}