# Formatting Assistance

**URL:** <https://forums.powershell.org/t/formatting-assistance/8003>\
**Category:** PowerShell Help\
**Created:** [February 6, 2017, 8:31pm UTC](https://forums.powershell.org/t/formatting-assistance/8003 "2017-02-06T20:31:36Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![andrew-rasdell](https://avatars.discourse-cdn.com/v4/letter/a/a87d85/32.png) [@andrew-rasdell](https://forums.powershell.org/u/andrew-rasdell)\
**Post date:** [February 6, 2017, 8:31pm UTC](https://forums.powershell.org/t/formatting-assistance/8003/1 "2017-02-06T20:31:36Z")

</div>

Hi Community,

I am trying to get the below to output into a more readable format - perhaps to Out-gridview

$services = Get-Service

$services | Where-Object {$_.requiredservices} | Select-Object -Property name, @{n=‘requiredservices’; e={$_.requiredservices.name}}, @{n=‘Status’;e={$\_.requiredservices.status}}

I would like to try and get requiredservices and status to ‘ungroup’ and be on a separate line each so AppIDSvc would have 3 x lines with each required service and status? Any ideas appreciated

Name requiredservices Status

* * *

AppIDSvc {RpcSs, CryptSvc, AppID} {Running, Running, Stopped}  
Appinfo {RpcSs, ProfSvc} {Running, Running}  
AudioEndpointBuilder PlugPlay Running  
AudioSrv {MMCSS, RpcSs, AudioEndpointBuilder} {Stopped, Running, Running}  
AxInstSV rpcss Running  
BFE RpcSs Running  
BITS {RpcSs, EventSystem} {Running, Running}  
Browser {LanmanServer, LanmanWorkstation} {Running, Running}

---

<div class="post-metadata">

**Author:** ![daniel-krebs](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.powershell.org/daniel-krebs/32/484_2.png) [@daniel-krebs](https://forums.powershell.org/u/daniel-krebs)\
**Post date:** [February 7, 2017, 4:27am UTC](https://forums.powershell.org/t/formatting-assistance/8003/2 "2017-02-07T04:27:39Z")

</div>

Below works for me. Let me know what you think.

```
Get-Service | ForEach-Object {
    if ($_.RequiredServices) {
        foreach ($service in $_.RequiredServices) {
            [PSCustomObject] @{
                'Name' = $_.Name
                'RequiredService' = $service.Name
                'Status' = $service.Status
            }
        }
    }
}
```

---

<div class="post-metadata">

**Author:** ![andrew-rasdell](https://avatars.discourse-cdn.com/v4/letter/a/a87d85/32.png) [@andrew-rasdell](https://forums.powershell.org/u/andrew-rasdell)\
**Post date:** [February 7, 2017, 3:21pm UTC](https://forums.powershell.org/t/formatting-assistance/8003/3 "2017-02-07T15:21:23Z")

</div>

Hey Daniel,

works for me as well - thanks so much

---

<div class="post-metadata">

**Author:** ![dotnVo](https://avatars.discourse-cdn.com/v4/letter/d/4af34b/32.png) [@dotnVo](https://forums.powershell.org/u/dotnVo)\
**Post date:** [May 16, 2024, 8:39pm UTC](https://forums.powershell.org/t/formatting-assistance/8003/4 "2024-05-16T20:39:31Z")

</div>


