【发布时间】:2020-10-07 12:59:29
【问题描述】:
我是 AWK 新手,我需要将此输出中“值”字段的值保存在一个文件中
'{"extraLeveling":1,"columnNames":["count(userId)"],"values":[[13]]}'
在这种情况下,我需要 13,我如何使用 awk 来做到这一点? 我尝试了 awk -F',' '{print $4} 但我肯定做错了什么。
谢谢!
【问题讨论】:
-
欢迎来到 SO,您能否发表您为解决自己的问题所做的努力,请编辑您的问题并让我们知道。
-
看起来像json,你试过在上面使用
jq吗? -
谁告诉你在这里使用'awk'? :)
-
我考虑过使用 awk,但也许有更好的方法,我必须使用该数字在我使用 curl 发送的 json 中发送。
-
你真的应该学习
jq,但如果你绝望,echo '{"extraLeveling":1,"columnNames":["count(userId)"],"values":[[13]]}'| awk '-F[[]' '{num=$4;sub(/]]}/,"",num); print num}'会产生13作为输出。当您的输入中有一点点变化时,您可以指望它打破! ;祝你好运。 `