我有一个Powershell命令,它返回正在执行HTTP Get的Invoke-RestMethod
中的对象。如果我回复回报,它看起来像这样:
policies -------- {@{id=12345; name=xxxx; ... }
我想解析id
的值。我将采取什么方法来实现这一目标?
答案 0 :(得分:0)
如@Will评论中所述 - >使用Get-Member
获取对象类型,例如:
$returnVal = Invoke-RestMethod ...
$returnVal | Get-Member
这应返回返回对象的类型(包括您可以在对象上调用的方法和属性)。
似乎policies
可能是字典,但我不确定。如果是字典,您可以尝试:
$returnVal = Invoke-RestMethod ...
$dict = $returnVal | select -ExpandProperty policies
$id = $dict.Get_Item("id")
如果是简单的JSON,您可以通过以下方式对其进行反序列化:
$returnVal = Invoke-RestMethod ...
$derserializedJsonObject = $returnVal | select policies | ConvertTo-Json
希望有所帮助