Показать полную графическую версию : [решено] Импорт из CSV в AD с помощью PowerShell
Приведите результат скрипта с тестовым пользователем.
Исключеие при вызове "SetInfo" с "0" аргументами: "Для службы каталогов указан недопустимый синтаксис атрибута."
C:\modlog.ps1:28 знак:29
+ $objuser.SetInfo <<<< ()
+CategoryInfo : NotSpecified: (:) [],MethodInvocationException
+FullyQualifiedErrorId:CatchFromBaseAdapterMethodInvokeTI
Скрипт:
$users = Import-Csv c:\list10.csv -Delimiter ";"
$props = $users | Get-Member -MemberType NoteProperty | Select -Expand name
foreach ($user in $users)
{
Try{
$objuser = ([adsisearcher]"(mail=$($user.mail))").FindOne().GetDirectoryEntry()
}
Catch {
continue
}
$props | Foreach {
$prop = $_.ToLower()
$log = New-Object Text.StringBuilder
$oldprop = $objuser.InvokeGet($prop)
if ($user.$prop -ne $oldprop)
{
$objuser.Put("$prop",$user.$prop)
$text = "{0} : old {1} new {2} - {3}" -f $objuser.displayname[0],$oldprop,$user.$prop,(Get-Date)
$log.AppendLine($text) | Out-Null
}
}
try {
$objuser.SetInfo()
$log.ToString() | Out-File c:\result.txt -Append
}
catch {
$_
}
}
csv:
mail;company;title;physicalDeliveryOfficeName;homephone;Telephonenumber;ipphone;mobile
test@test.ru;test;tester;;133;89999999;;112399
$users = Import-Csv c:\list10.csv -Delimiter ";"
$props = $users | Get-Member -MemberType NoteProperty | Select -Expand name
foreach ($user in $users)
{
Try{
$objuser = ([adsisearcher]"(mail=$($user.mail))").FindOne().GetDirectoryEntry()
}
Catch {
continue
}
$log = New-Object Text.StringBuilder
$props | Foreach {
$prop = $_.ToLower()
$oldprop = $objuser.InvokeGet($prop)
if ($user.$prop -ne $oldprop -and $user.$prop)
{
$objuser.Put("$prop",$user.$prop)
$text = "{0} : old {1} new {2} prop {3} - {4}" -f $objuser.name[0],$oldprop,$user.$prop,$prop,(Get-Date)
$log.AppendLine($text) | Out-Null
}
}
Try {
$objuser.SetInfo()
if($log.ToString())
{
$log.ToString() | Out-File C:\result.txt -Append
}
}
Catch {
$_
}
}
Всё, теперь код, под мои условия, - ИДЕАЛЕН!!!
ОГРОМНОЕ СПАСИБО!
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.