powershell按属性名称而不是索引访问值

时间:2014-03-20 23:11:21

标签: powershell

这是我在powershell脚本上的第二天。

我有一个PowerShell脚本如下;

Search-AdminAuditLog -Cmdlets add-rolegroupmember,remove-rolegroupmember -StartDate $startDate -EndDate $endDate -Parameters member |
where { $_.objectmodified -like '*'+$RoleGroupName} |
select 'objectmodified','Caller','Rundate','cmdletname',@{Name='Username';Expression={$***_.cmdletparameters.Value[1]***}}

如何访问表达式_.cmdletparameters.Value[1]的值_.cmdletparameters.Value['Name']而不是索引

1 个答案:

答案 0 :(得分:1)

您可以通过Where语句在大多数其他任何事情中运行即兴散列表中的scriptblock。尝试这样的事情:

@{l='Username';e={$_.cmdletparameters|?{$_.Name -like "UserID"}|select -expandproperty Value}}