$path = "C:\Scripts\05-Script\Contacts.csv"
$Database = "xDB"
$OU = "XUnit/Test"
#$Password = (Get-Credential).Password
$Password = ConvertTo-SecureString "P@ssWord1" -AsPlainText -Force
Import-Csv $path | ForEach-Object {
$FirstName = $_."FirstName"
$LastName = $_."LastName"
$Alias = $_."Alias"
$UserPrincipalName = $Alias # +xdomain.com"
$OtherEmail = $FirstName +"."+ $LastName + "@xdomain.com"
$DisplayName = $LastName+", "+$FirstName
New-Mailbox -Alias $Alias `
-Name $Alias `
-FirstName $FirstName `
-LastName $LastName `
-DisplayName $DisplayName `
-SamAccountName $Alias `
-UserPrincipalName $UserPrincipalName `
-Database $Database `
-OrganizationalUnit $OU `
-Password $Password `
-ResetPasswordOnNextLogon $false
}
Powershell-script: Read Contacts from excel file, and create Mailboxes for them on Microsoft Exchange
-
02-06-2022 - |
문제
I tried things out and not with much success. I don't want to know the whole solution for this problem, but where should I start (or maybe there already exist a solution)? Should I better convert the excel file to CSV or XML? Or maybe should I put some C# in it ?
Here are some more details:
- Attributes that should be readed and then filled in the mailbox: Name, Lastname, Display Name, Alias, e-mail(genrated from name and lastname).
- Checkbox must be unchecked: "Automatically update e-mail adresses based on e-mail adressess policy"
- Generate e-mails from the names with addtional domain (example: Name: Dennis, Lastname: Ritchie, e-mail:Dennis.Ritchie@testdomain.com).
해결책 2
다른 팁
CSV is certainly the easiest. You can then use
Import-CSV foo.csv
to read the file. Provided you used the appropriate column header names in the first row you can use them directly:
Import-CSV foo.csv | ForEach-Object { $_.Lastname; $_.'Display Name', <# etc. #> }
Enable-Mailbox
seems to be the command to create Exchange mailboxes.
제휴하지 않습니다 StackOverflow