HOw to merge 2 csv results in PowerShell?

Hi,

For example:

$DisabledADUser = Get-ADUser -Filter {Enabled -eq $false} -properties mail | Select name,enabled, mail | Export-csv c:\temp\Disabled-Account.csv

$OUDisabledUsers = Get-ADUser -SearchBase "OU=Disabled User Accounts,DC=AU,DC=local" -Filter * -properties mail | Select name,enabled, mail | Export-csv c:\temp\AU-OU-DisabledUsers.csv

How can I merge $DisabledADUser and $OUDisabledUsers  (without duplication) and export the final result in csv file?
LVL 1
SAM2009Asked:
Who is Participating?
 
oBdAConnect With a Mentor Commented:
$(
	Get-ADUser -Filter {Enabled -eq $false} -Properties Mail
	Get-ADUser -SearchBase "OU=Disabled User Accounts,DC=AU,DC=local" -Filter * -Properties Mail
) | Group-Object -Property SamAccountName |
	ForEach-Object {$_.Group | Select-Object -First 1} |
	Select-Object -Property Name, Enabled, Mail |
	Export-csv -NoTypeInformation -Path C:\temp\Disabled-Account.csv

Open in new window

0
 
Patrick BogersConnect With a Mentor Datacenter platform engineer LindowsCommented:
Hi

Try with MergeCSV which is described here
You need identical header in both files to merge but that didnt take rocket science to figure out right?

Cheers
0
 
SAM2009Author Commented:
ODBA: Just a question, why "Select-Object -First 1"?
0
 
oBdACommented:
Because as you already noticed in your question ("without duplication"), there are two independent AD queries, so there can be duplicate objects returned. The Group-Object will group these duplicates, and the next line with the "Select-Object -First 1" will only pass through one of them.
0
 
SAM2009Author Commented:
Thanks for your help!
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.