Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Ветеран


Сообщения: 1259
Благодарности: 861

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
$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 {
        $_
    }
}
Это сообщение посчитали полезным следующие участники:

Отправлено: 13:29, 20-07-2012 | #23