首页 > 解决方案 > 如何在批处理脚本中读取 JSON 数据

问题描述

我有一个名为“Config.json”的 JSON 文件,如下所示:

{ "RunEnvironment": "DEV"}

在同一目录下的批处理文件中,我想读取“RunEnvironment”元素的值。我的批处理脚本看起来像:

if [jsonElement] == 'DEV' ( :: do something )

谁能告诉我如何做到这一点?

标签: jsonwindowsbatch-filecommand-line

解决方案


例如,在 PowerShell 中,您可以执行以下操作:

> If((Get-Content '.\Config.json'|ConvertFrom-Json).RunEnvironment -eq 'DEV'){"is DEV:Whatever"}
is DEV:Whatever

在 cmd 行上成为主题

> for /f "tokens=1,2 delims=:{} " %A in (Config.json) do @If "%~B"=="Dev" @Echo (%~A = %~B)
(RunEnvironment=DEV)

在批处理文件中

@Echo off
for /f "tokens=1,2 delims=:{} " %%A in (Config.json) do (
    If "%%~B"=="Dev" Echo (%%~A=%%~B^)
)

Echo (%%~A=%%~B^)可以用你打算做的任何事情来代替。


推荐阅读