Имя пользователя:
Пароль:
 

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

Новый участник


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

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


$AOU = Get-ADOrganizationalUnit -Filter 'name -eq "$AOU"'
Тут наверно должна быть другая переменная?
-------
Что-то не проходит Move-Adobject

Код: Выделить весь код
Param(
[string] $csv
)
[System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms")
$zz = 0
$z = $zz
Import-Csv $csv | ForEach-object -process `
{`
$EEA =  $_.E
$name = $_.A
$OU = $_.OU
try {New-MailContact `
	     -ExternalEmailAddress $EEA `
		 -Name $_.N `
		 -Alias $_.A `
		 -FirstName $_.FN `
		 -Initials $_.I `
		 -LastName $_.LN `
		 -OrganizationalUnit $_.OU -WarningAction SilentlyContinue -ErrorAction Stop | Set-MailContact -CustomAttribute11 $_.D -WarningAction SilentlyContinue; Write-Host $name  "......Create" -ForegroundColor Green; $z = $zz + 1}
	catch {
			if($_.CategoryInfo.Reason -eq "ADObjectAlreadyExistsException") {
			$AOU = $OU.split("/")[-1]
			$contact = Get-Contact $name
			$OU1 = Get-ADOrganizationalUnit -Filter 'name -eq "$AOU"'
			
			if($contact.WindowsEmailAddress -ne $EEA){
				Set-MailContact -Identity $name -ExternalEmailAddress $EEA -WarningAction SilentlyContinue
				Write-Host $name  -ForeGround Magenta
				Write-Host "................Already Exists, BUT not Actual....Replace Email" -ForegroundColor Red
			}
            if($contact.OrganizationalUnit -ne $OU) {
				Move-ADObject $contact.Guid -TargetPath $OU1.ObjectGUID -WarningAction SilentlyContinue
                Write-Host $name -ForeGround Magenta
				Write-Host "................Already Exists, BUT Diferent OU....I changed " -ForegroundColor Red
			}
			else {
				Write-Host $name -ForeGround Magenta
				Write-Host "................Already Exists and Actual" -ForegroundColor Green
			}

			
		}
	}
}
Как делать дебаг Powershell скриптов?

Отправлено: 06:41, 02-07-2014 | #5