PowerShell - 显示父对象和子对象的 属性
PowerShell - Show Property of Parent Object and Child Object
如果我在哈希表中有一个电子邮件元数据列表,并且每封电子邮件都有一个哈希表,其中包含该对象中的附件列表,如下所示:
$Emails = @{
ID = "E123";
Subject = "Check this out";
Attachments = @{
ID = "A123";
Name = "FunnyPic.jpg"
}
}
然后将哈希表转换为 PSObject,如下所示:
$EmailsObject = New-Object -TypeName PSObject -Property $Emails
我想做这样的事情:
$EmailsObject | Select ID, Attachments.ID
我该怎么做?
我想将电子邮件的 ID
与关联附件的 ID
相关联。
如果使用 Select-Object
,则需要使用计算得到的 属性。像这样的……
$Emails = @{
ID = "E123";
Subject = "Check this out";
Attachments = @{
ID = "A123";
Name = "FunnyPic.jpg"
}
}
$EmailsObject = New-Object -TypeName PSObject -Property $Emails
$EmailsObject |
Select-Object ID,
@{
n = 'AttID'
e = {$_.Attachments.ID}
}
输出...
ID AttID
-- -----
E123 A123
您将需要使用计算属性。
$Emails | Select-Object -Property @{Name='ID';Expression={$_.ID};},@{Name='AttachmentId';Expression={$_.Attachments.ID};}
您可以将 Name
和 Expression
缩短为 n
和 e
。
如果我在哈希表中有一个电子邮件元数据列表,并且每封电子邮件都有一个哈希表,其中包含该对象中的附件列表,如下所示:
$Emails = @{
ID = "E123";
Subject = "Check this out";
Attachments = @{
ID = "A123";
Name = "FunnyPic.jpg"
}
}
然后将哈希表转换为 PSObject,如下所示:
$EmailsObject = New-Object -TypeName PSObject -Property $Emails
我想做这样的事情:
$EmailsObject | Select ID, Attachments.ID
我该怎么做?
我想将电子邮件的 ID
与关联附件的 ID
相关联。
如果使用 Select-Object
,则需要使用计算得到的 属性。像这样的……
$Emails = @{
ID = "E123";
Subject = "Check this out";
Attachments = @{
ID = "A123";
Name = "FunnyPic.jpg"
}
}
$EmailsObject = New-Object -TypeName PSObject -Property $Emails
$EmailsObject |
Select-Object ID,
@{
n = 'AttID'
e = {$_.Attachments.ID}
}
输出...
ID AttID
-- -----
E123 A123
您将需要使用计算属性。
$Emails | Select-Object -Property @{Name='ID';Expression={$_.ID};},@{Name='AttachmentId';Expression={$_.Attachments.ID};}
您可以将 Name
和 Expression
缩短为 n
和 e
。