help with powershell script and loop

i dont know how to script and i am learning everyday new things i can do with powershell.  

i have two lists that i need to apply.  there are a current set of users that have an existing email address and i need to forward them to a new email address.  the below command helps me achieve this while maintaining their existing accounts.

Set-Mailbox sally@contoso.com -ForwardingSmtpAddress manuel@contoso.com -DeliverToMailboxAndForward $True

here is my stab at this

$CurrentEmails = get-content c:\temp\currentemails.txt
$newemails = get-content c:\temp\newemails.txt

set-mailbox $currentemails -forwardingsmtpaddress $newemails -delivertomailboxandforward $true
johnkesoglouAsked:
Who is Participating?
 
oBdAConnect With a Mentor Commented:
This could be made to work with two files, but it would be really error-prone.
Instead, create a csv file, for example "Forwards.csv", from your two files (if you don't have one already in Excel form or the like). The fields can be enclosed in double quotes, but it's optional here, since commas aren't allowed in an email address.
If your header line has different names, you can just adjust the arguments for Set-Mailbox accordingly in the one-liner below.
CurrentAddress,ForwardingAddress
sally@contoso.com,manuel@contoso.com
john.doe@contoso.com,someone@contoso.com

Open in new window

Then just run the following:
Import-Csv -Path .\Forwards.csv | ForEach-Object {Set-Mailbox $_.CurrentAddress -ForwardingSmtpAddress $_.ForwardingAddress -DeliverToMailboxAndForward $True}

Open in new window

0
 
johnkesoglouAuthor Commented:
thank you!
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.