0

我嘗試了一些事情,但沒有取得太大的成功。 我不想知道這個問題的整個解決方案,但我應該從哪裏開始(或者可能已經存在解決方案)? 我應該更好地將excel文件轉換爲CSV或XML嗎? 或者,也許我應該把一些C#中?Powershell腳本:從Excel文件中讀取聯繫人,並在Microsoft Exchange上爲他們創建郵箱

這裏有一些更多的細節:

  1. 屬性應readed,然後填寫郵箱:姓名,姓氏,顯示名,別名,電子郵件(從名字和姓氏genrated)。
  2. 複選框必須取消選中「自動更新基於電子郵件adressess政策的電子郵件不會忽略」
  3. 生成與addtional域(例如姓名電子郵件:姓名:丹尼斯,名字:裏奇,電子郵件:[email protected])。
+0

歡迎來到Stack Overflow!您不需要爲帖子添加簽名 - 您的用戶卡會自動顯示在其下方。 – Artemix

回答

0
$path = "C:\Scripts\05-Script\Contacts.csv" 
$Database = "xDB" 
$OU = "XUnit/Test" 
#$Password = (Get-Credential).Password 
$Password = ConvertTo-SecureString "[email protected]" -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 

} 
0

CSV確實是最簡單的。然後您可以使用

Import-CSV foo.csv 

來讀取文件。只要你使用相應的列標題名稱的第一行中,你可以直接使用它們:

Import-CSV foo.csv | ForEach-Object { $_.Lastname; $_.'Display Name', <# etc. #> } 

Enable-Mailbox似乎是創建Exchange郵箱的命令。

相關問題