【问题标题】:powersehll JSON parse to get property namepowershell JSON解析以获取属性名称
【发布时间】:2021-12-13 14:03:08
【问题描述】:

需要解析这个 JSON 文件

{
  "domains": {
    "1.com": {
      "data_path": "c:\\zzzzz\\Domains\\1.com"
    },
    "22.com": {
      "data_path": "c:\\zzzzz\\Domains\\22.com"
    },
    "333.com": {
      "data_path": "c:\\zzzzz\\Domains\\333.com"
    },
    "4444.com": {
      "data_path": "c:\\zzzzz\\Domains\\4444.com"
    }
  },
  "domain_aliases": {}
}

获取域属性值,如

1.com 22.com 333同城 4444.com

谢谢

【问题讨论】:

    标签: json powershell parsing


    【解决方案1】:

    使用ConvertFrom-Json解析json:

    $json = @'
    {
      "domains": {
        "1.com": {
          "data_path": "c:\\zzzzz\\Domains\\1.com"
        },
        "22.com": {
          "data_path": "c:\\zzzzz\\Domains\\22.com"
        },
        "333.com": {
          "data_path": "c:\\zzzzz\\Domains\\333.com"
        },
        "4444.com": {
          "data_path": "c:\\zzzzz\\Domains\\4444.com"
        }
      },
      "domain_aliases": {}
    }
    '@
    
    $data = $json |ConvertFrom-Json
    

    然后引用domains属性并使用psobject隐藏成员集枚举其属性:

    $data.domains.psobject.Properties |ForEach-Object Name
    

    【讨论】:

      猜你喜欢
      • 2012-10-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多