Exchange 2013批量创建邮箱错误

时间:2014-10-13 06:29:54

标签: powershell csv windows-server-2008 exchange-server

我正在尝试从csv文件导入用户列表,我收到以下错误:

脚本:

PS C:\ Software> import-csv C:\ Software \ lastDumpPolished.csv | %{New-ADUser -Name $ .Name -SamAccountName $ .SamAccountName -DisplayName $ .Name -Surname $ .Sn -GivenName $ .GivenName -AccountPassword( ConvertTo-SecureString password1234 -AsPlainText -Force)-Enabled:$ true -Title $ .Title -Description $ .describtion -Company Myland -OfficePhone $ .Telephone -HomeDrive Z:-HomeDirectory $ homedrive -ChangePasswordAtLogon:$ true} | Enable-Mailbox -Identity $ .SamAccountName -Alias $ .SamAccountName

错误:

Enable-Mailbox : Cannot bind argument to parameter 'Identity' because it is null.
At line:1 char:443
+ ... lbox -Identity $_.SamAccountName -Alias $_.SamAccountName
+                    ~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidData: (:) [Enable-Mailbox], ParameterBind
   ingValidationException
    + FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,M
   icrosoft.Exchange.Management.RecipientTasks.EnableMailbox

Powershell由于某种原因不记得$ _。SamAccountName。 它有一个简单的内联方法'将它设置为可以在管道之后使用的变量吗?

如何摆脱该错误,以便我可以批量创建和启用邮箱?

1 个答案:

答案 0 :(得分:0)

PS C:\ Software> import-csv C:\ Software \ lastDumpPolished.csv | %{New-ADUser -Name $ .Name -SamAccountName $ .SamAccountName -DisplayName $ .Name -Surname $ .Sn -GivenName $ .GivenName -AccountPassword( ConvertTo-SecureString Password1234 -AsPlainText -Force)-Enabled:$ true -Title $ .Title -Description $ .describtion -Company Midland -OfficePhone $ .Telephone -HomeDrive Z:-HomeDirectory $ homedrive -ChangePasswordAtLogon:$ true} | %{Enable-Mailbox -Identity $ .SamAccountName -Alias $ .SamAccountName}