Перейти к содержанию

Скрипт после доработки

Скрипт после доработки


#Sorry, I'm newbie script kiddy
#Fix my errors, please
Import-Module ActiveDirectory
Import-Csv -Delimiter ";" C:\Users.csv | ForEach-Object {New-ADUser -Name ($_.("Last Name") + " " + $_.("First Name")) `
                                         -GivenName $_.("First Name")     `
                                         -Surname $_.("Last Name")        `
                                         -Title $_.Role `
                                         -MobilePhone $_.Phone            `
                                         -Department $_.OU                `
                                         -StreetAddress $_.Street         `
                                         -PostalCode $_.("ZIP/Postal Code")              `
                                         -City $_.City                    `
                                         -Country RU                      `
                                         -Path ("OU=" + $_.OU + ",DC=skill39,DC=wsr") `
                                         -AccountPassword(ConvertTo-SecureString($_.Password) -AsPlainText -Force) `
                                         -Enabled $true                   `
                                         -CannotChangePassword $true}
Import-Csv -Delimiter ";" C:\users.csv | ForEach-Object{Add-ADGroupMember -Identity $_.OU `
                                         -Members ($_.("Last Name") + " " + $_.("First Name"))}

Изменения:

  • Import-Csv -Delimiter ";" - указывает на использование в качестве разделителей ";"
  • Переменные состоящие из 2 слов и разделенные пробелом, были заключены в кавычки и скобки. Выражения на сложение переменных так же были заключены в скобки
  • Name ($_.("Last Name") + " " + $_.("First Name"))
  • -GivenName $_.("First Name")
  • -Surname $_.("Last Name")
  • -PostalCode $_.("ZIP/Postal Code")
  • -Members ($_.("Last Name") + " " + $_.("First Name"))
  • Исправлено наименование домена
  • -Path ("OU=" + $_.OU + ",DC=skill39,DC=wsr")
  • Значение пароля получается из одноименной переменной
  • -AccountPassword(ConvertTo-SecureString($_.Password) -AsPlainText -Force)
  • Переменным формата "true" были добавлены недостающие знаки
  • -Enabled $true
  • -CannotChangePassword $true