如何读取和解析json文件并将其添加到shell脚本变量中?

时间:2015-01-28 06:20:56

标签: json linux shell

我有一个名为loaded.json的文件,其中包含以下json数据。

    {
        "name" : "xat",
        "code" : "QpiAc"
    }
    {
        "name" : "gbd",
        "code" : "gDSo3"
    }
    {
        "name" : "mbB",
        "code" : "mg33y"
    }
    {
        "name" : "sbd",
        "code" : "2Vl1w"
    }

形成shell脚本我需要读取并解析json并将结果添加到变量中并像这样打印出来。

#!/bin/sh
databasename = cat loaded.json | json select '.name'
echo $databasename

当我运行上面的脚本时,我收到了像

这样的错误
databasename command not found
json command not found

我是shell脚本的新手,请帮我解决这个问题

2 个答案:

答案 0 :(得分:4)

替换它,

databasename=`cat loaded.json | json select '.name'`

或尝试jq命令,

databasename=`jq '.name' loaded.json`

有关详细信息,请阅读此article

答案 1 :(得分:1)

我可以使用jq命令获得结果,如下所示

databasename=`cat loaded.json | jq '.name'`