Ok, you first suggestion returns this output
FANS Status
POWER_SUPPLIES Stat
-----------
-------------------
{OK, $null}
{FAILED, $null}
Here's the output for the other commands (in order)
PS C:\> Get-HPiLOHealthSummary -server $target -username $UserName -password $password | gm
TypeName: System.Management.Automation.PSCustomObject
Name MemberType Definition
---- ---------- ----------
Equals Method bool Equals(System.Object obj)
GetHashCode Method int GetHashCode()
GetType Method type GetType()
ToString Method string ToString()
DRIVE_STATUS NoteProperty System.String DRIVE_STATUS=Ok
FANS NoteProperty System.Object[] FANS=System.Object[]
HOSTNAME NoteProperty System.String HOSTNAME=belbru-trmv003
IP NoteProperty System.String IP=172.18.121.29
POWER_SUPPLIES NoteProperty System.Object[] POWER_SUPPLIES=System.Object[]
STATUS_MESSAGE NoteProperty System.String STATUS_MESSAGE=OK
STATUS_TYPE NoteProperty System.String STATUS_TYPE=OK
TEMPERATURE_STATUS NoteProperty System.String TEMPERATURE_STATUS=OK
PS C:\> Get-HPiLOHealthSummary -server $target -username $UserName -password $password |select -expand FANS| gm
TypeName: Selected.System.Management.Automation.PSCustomObject
Name MemberType Definition
---- ---------- ----------
Equals Method bool Equals(System.Object obj)
GetHashCode Method int GetHashCode()
GetType Method type GetType()
ToString Method string ToString()
STATUS NoteProperty System.String STATUS=OK
PS C:\> Get-HPiLOHealthSummary -server $target -username $UserName -password $password |select -expand power_supplies| gm
TypeName: Selected.System.Management.Automation.PSCustomObject
Name MemberType Definition
---- ---------- ----------
Equals Method bool Equals(System.Object obj)
GetHashCode Method int GetHashCode()
GetType Method type GetType()
ToString Method string ToString()
STATUS NoteProperty System.String STATUS=FAILED