如何使用windows命令行将JSON文件解析为变量?

Kri*_*iem 7 windows command-line json

我有这个JSON文件叫做test.json:

{
    "test":true,
    "limit": 
    {
        "min":0.5,
        "max":1.5
    }
}
Run Code Online (Sandbox Code Playgroud)

我希望能够在Windows命令行中读取此文件,并将这些对象解析为变量.

我该怎么做?

Ida*_*rye 5

如果使用Windows Powershell作为命令行,则可以使用ConvertFrom-JSONcmdlet:http://powershelljson.codeplex.com/

确保您的PowerShell版本高于3.0,因为该版本提供了ConvertFrom-JSON.

如果您使用普通的旧CMD,则需要一个外部工具.我喜欢jq:http://stedolan.github.io/jq/ .本教程curl用于示例,但您可以轻松地使用echo或读取文件中的JSON.

  • 回答我自己的问题:'FOR/F'delims ="%% i in('type test.json ^ | jq .limit.min')DO SET min = %% i` (4认同)
  • 请注意,您无需在此处使用`type`-您可以使用文件重定向运算符`<`,并编写`'jq .limit.min ^ <test.json'`。 (2认同)