Output Help

Welcome Forums General PowerShell Q&A Output Help

This topic contains 6 replies, has 4 voices, and was last updated by

3 years, 10 months ago.

  • Author
  • #24522

    Points: -19
    Rank: Member

    I have become decent at finding the AD data I need but when it comes to creating a spreadsheet with the information I find my knowledge totally inadequate to do what I want to do. I am hoping for some quick help and some helpful URL's.

    When I run "Get-aduser MyID -Properties * | FL Name, Memberof " the memberof field has over 100 entries in curly braces separated by commas.
    I would like to end up with a spreadsheet with my name in one column and then another column of the 100+ groups, then the next users name, his groups etc.

    I have looked at Format-List, and tried Exportto-csv with no luck, what is the best way to do this?

    Thanks for any help you can provide,

  • #24523

    Points: 1,811
    Helping HandTeam Member
    Rank: Community Hero

    That's because MemberOf is a collection of objects, not just a simple value; when asked to display a collection in a list or table, PowerShell can't create a sub-list or sub-table, so it does the curly bracket thing.

    There's no straightforward way to get what you want using what's built into the shell. You'd have to code up something custom.

  • #24524

    Points: 1
    Rank: Member
    Get-aduser MyID -Properties memberof |
    Select-Object Name,@{n='groups';e={
    		$_.memberof -join "`r`n"
    	}} |
    Export-CSV -NoTypeInformation -Path c:\test.csv
    See if that is closer to what you want.
    • #24527

      Points: -19
      Rank: Member

      Thanks Don. I just purchased your PS in 30 days of lunches; does that include how I might handle this?

  • #24525

    Points: 1
    Rank: Member
    Get-aduser MyID -Properties memberof |
    ForEach-Object {
    	$name = $_.name
    	$_.memberof |
    	ForEach-Object {
    } |
    Export-Csv -NoTypeInformation -Path c:\test.csv
    Or something like this.
    • #24528

      Points: -19
      Rank: Member

      Output has a little extra info, how do I trim it down?

      Name Dan, Lee
      Group CN=g-cae-NetworkEng-readers,OU=Roles,DC=up,DC=corp,DC=upc
      Name Dan, Lee
      Group CN=g-jar-read,OU=Roles,DC=up,DC=corp,DC=upc

  • #24526

    Points: 527
    Helping Hand
    Rank: Major Contributor

    Ugly, but it works...

    Calculated Expression
    Loop through MemberOf
    Split the CN into an array
    Get the first index (e.g. CN=MyGroup)
    Replace CN= with nothing, basically strip off CN=
    And finally Join the returned array with a semicolon...

    Get-ADUser myuser -Properties MemberOf | Select Name, @{Label="Groups";Expression={$($_.MemberOf | foreach{($_.Split(",")[0].Replace("CN=",""))}) -Join ";"}}


    Name        Groups                                                                         
    ----        ------                                                                         
    My User Group1;Group2;Group3;Group4;...

The topic ‘Output Help’ is closed to new replies.

denizli escort samsun escort muğla escort ataşehir escort kuşadası escort