-1

我有以下Json:

{
    "variable1" : "variable2"
}

我不知道价值variable1和价值variable2是什么。我需要从 Json 中获取它们,大概是使用两个ConvertFrom-Json以某种方式使用的单独命令。它们应该以纯文本格式返回,而不是任何 PS 自定义对象或类似的东西。

4

1 回答 1

2

您可以使用 . 将键和值导出为纯文本Out-File

$json=@'
{
    "variable1": "variable2",
    "variable3": "variable4",
    "variable5": "variable6"
}
'@|ConvertFrom-Json -AsHashtable

PS /~> $json

Name                           Value
----                           -----
variable3                      variable4
variable5                      variable6
variable1                      variable2

PS /~> $json.Keys
variable3
variable5
variable1

PS /~> $json.Values
variable4
variable6
variable2

编辑:

感谢@Vivere,不知道-AsHashTable是在 PS Core 上引入的。假设测试是在 PS 5.1 上执行的,这里是如何获得相同的结果。如果 JSON 有更多深度,请查看他在下面评论中提供的链接。

PS /~> $json=@'
{
    "variable1": "variable2",
    "variable3": "variable4",
    "variable5": "variable6"
}
'@|ConvertFrom-Json

PS /~> $json.psobject.Properties.Name
variable1
variable3
variable5

PS /~> $json.psobject.Properties.Name|%{$json.$_}
variable2
variable4
variable6
于 2021-04-13T04:48:23.023 回答