使用 AWK 过滤复杂行



我是AWK的新手,我需要将此输出中的字段"values"的值保存在文件中

'{"extraLeveling":1,"columnNames":["count(userId)"],"values":[[13]]}'

在这种情况下,我需要 13 个,我如何使用 awk 来做到这一点? 我尝试通过做awk -F","{打印$ 4},但肯定我做错了什么。

谢谢!

如果两个'都不是字符串的一部分,那么我建议对你的 JSON 使用 jq。

jq '.values[][]' file

输出:

13

穷人的查询

... | sed -E 's/.*"values":[[(.*)]].*/1/'
13

匹配"值"键旁边的双方括号中的值。

最新更新