繁体   English   中英

根据 csv 文件批量分配新的 SMTP 地址和新公司名称 powershell

[英]Bulk assigning new SMTP addresses & new company name with powershell based on csv file

我必须创建一个 Powershell 脚本,为 csv 文件的用户分配一个新的主地址 SMTP。 他们还需要一些其他地址。 除此之外,这些用户需要更改他们的公司名称。 我对所有这些东西真的很陌生,并试图将一些不起作用的东西拼凑在一起,这让我发疯。 :(

如果您需要更多信息,请告诉我。 :)

这是我到目前为止尝试过的代码:

$Cred = Get-Credential
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.outlook.com/powershell -Credential $Cred -Authentication Basic -AllowRedirection
Import-PSSession $Session
Connect-AzureAD -Confirm

#Assigning addresses & company
Import-CSV "C:\CSVPowershell\userstest.csv" | ForEach {
Set-Mailbox $_.Identity -EmailAddresses @{add= $_.MainEmailAddress}
Set-AzureADUser -ObjectId $_.Identity -CompanyName $_.Company
}


#close
Remove-PSSession $Session

请检查以下解决方法:

CSV 文件

UserName, Mailform1, Mailform2 
aaa test, atest@companyname.com , atest@companyname_Dept.com
bbb test, btest@companyname.com , btest@companyname_Dept.com
ccc test, ctest@companyname.com , ctest@companyname_Dept.com

PowerShell 脚本

注意:在您的代码中,您缺少操作add 要么您必须在脚本中使用添加/删除来执行相关操作。

    Import-CSV "C:\Users\Admin\UserEmailAddress.csv" | ForEach 
    {
        # Changing the Main Email address into your required Email.
        #Adding Multiple Email addresses (here 2 Email addresses)
        Set-Mailbox $_.UserName -EmailAddresses @{add= $_.Mailform1, $_.Mailform2}
    }

假设您只尝试向用户添加一个 SMTP 地址,请遵循以下操作:

CSV 文件

UserName, Mailform1
aaa test, atest@companyname.com 
bbb test, btest@companyname.com 
ccc test, ctest@companyname.com 

PowerShell 脚本

    Import-CSV "C:\Users\Admin\UserEmailAddress.csv" | ForEach 
    {
        # Changing the Main Email address into your required Email.
        
        Set-Mailbox $_.UserName -EmailAddresses @{add= $_.Mailform1}
    }

请参阅此处了解更多信息

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM