5

I extract a list of departments from AD like this using PowerShell:

$departments = Get-ADUser -Filter * -Property Department |
               Where-Object { $_.Department } |
               Select -Expand Department -Unique

At the end of this operation, if I input on the console $departments I get all the names of the departments as I wished. But if I try to export this to a .csv file using

| Export-Csv H:\TEST\DEPTAAAAA.csv

I get this

#TYPE System.String
Length
4
9
5
13
13
13

How can I export the department names stored in the $departments so the output is a .csv file containing the department names?

1 Answer 1

8

The Export-Csv cmdlet exports the properties of the input objects as the fields of the output CSV. Since your input is a list of string objects the output is the property (Length) of these objects.

Don't expand the property Department if you want to export it via Export-Csv:

$departments = Get-ADUser -Filter * -Property Department |
               Where-Object { $_.Department } |
               Select Department -Unique

$departments | Export-Csv 'H:\TEST\DEPTAAAAA.csv'

or use Out-File instead of Export-Csv if you want to write the list of strings to the output file:

$departments = Get-ADUser -Filter * -Property Department |
               Where-Object { $_.Department } |
               Select -Expand Department -Unique

$departments | Out-File 'H:\TEST\DEPTAAAAA.csv'
Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.