我有以下带有示例值的JSON文件:
{
"files": [{
"fileName": "FOO",
"md5": "blablabla"
}, {
"fileName": "BAR",
"md5": "alaldlafj"
}]
}
现在我想要的是返回md5值,例如fileName是“FOO”。为此,我在jq
中有以下声明:
cat <file>.json | jq '.[] | select(.fileName=="FOO")'
然而回复是:jq: error (at <stdin>:11): Cannot index array with string "fileName"
返回密钥fileName等于某个参数的md5值的正确方法是什么?
答案 0 :(得分:8)
找到答案:
cat <file>.json | jq -r '.files[] | select(.fileName=="FOO") | .md5'
答案 1 :(得分:0)
或: 猫.json | jq -r'.files [] | select(.fileName ==“ FOO”)。md5'