PDA

Показать полную графическую версию : [решено] скрипт создание контактов в AD из csv файла


mcintosh55
23-02-2020, 18:39
Добрый день, подскажет скрипт создает только один контакт, а потом пытается опять же его создать, а не следующий в строке. Может че Я не правильно делаю

Import-Csv "C:\ad2.csv" | ForEach-Object { `
New-ADObject -type contact -path 'OU=contacts,OU=test,DC=test,DC=local' -Name $displayName -otherAttributes @{ `
'displayName'=$displayName;
'sn'=$sn;
'Name'=$Name;
'initials'=$initials;
'givenName'=$givenName;
'TelephoneNumber'=$TelephoneNumber;
'ipPhone'=$ipPhone;
'mobile'=$mobile;
'department'=$department;
'physicalDeliveryOfficeName'=$physicalDeliveryOfficeName;
'company'=$company;
'postalCode'=$postalCode;
'l'=$l;`
'description'=$description;`
'mail'=$mail;`
'c'=$c;`
'co'=$co;`
'st'=$st;`
'streetAddress'=$streetAddress;`
'title'=$title
}
}

Iska
23-02-2020, 22:10
mcintosh55, это вообще не должно создавать никаких контактов (если только раньше Вы где-то не присваивали переменным $displayName, $sn & etc значения — в таком случае у Вас будет N попыток создать контакт с одним и тем же путём, именем и т.д.).

Внутри ForEach-Object Вы должны работать с текущим объектом $_, наподобие:
… | ForEach-Object -Process {
New-ADObject -type contact -path 'OU=contacts,OU=test,DC=test,DC=local' -Name $_.displayName -otherAttributes @{ `
'displayName' = $_.displayName;
'sn' = $_.sn;
'Name' = $_.Name;

'title' = $_.title
}
}

(я, конечно, не знаю, что там у Вас внутри Вашего CSV).




© OSzone.net 2001-2012