带有嵌入式哈希表的 Powershell ConvertTo-json

2024-03-26

我在 ConvertTo-Json 方面遇到问题,并试图理解其行为和/或我做错了什么。

考虑以下命令序列:

$val=@{ID=10;Config=@{ID=11;Config=@{ID=12;Config='end'}}}
ConvertTo-json $val
ConvertTo-json @($val)

第一次转换给出以下输出:

{
    "ID":  10,
    "Config":  {
                   "ID":  11,
                   "Config":  {
                                  "ID":  12,
                                  "Config":  "end"
                              }
               }
}

第二次转换给出以下输出:

[
    {
        "ID":  10,
        "Config":  {
                       "ID":  11,
                       "Config":  "System.Collections.Hashtable"
                   }
    }
]

看来在数组情况下转换是不正确的。关于为什么会发生这种情况有什么想法吗?


深度有问题,默认值是2,你可以试试:

ConvertTo-json @($val) -Depth 5
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

带有嵌入式哈希表的 Powershell ConvertTo-json 的相关文章

随机推荐