我需要从JSON文件textuploader.com/1dchq中提取"name":"ConsumeKafka"
的id
,这样它就会给出结果:"id":"772658d2-8510-3834-856b-6cfd7e8871f6"
。
由于限制,我不能使用任何第三方工具。如何使用sed/awk执行此操作?
发布于 2019-06-05 02:58:05
您可以使用EvaluateJSONPath
处理器将JSON值提取到流文件属性中。使用JSONPath expression $.processors[?(@.component.name=="ConsumeKafka")].component.id
将ConsumeKafka
id
提取到流文件的属性。
顺便说一句,我认为你使用的API响应太通用了,太大了,没有用。您可以通过进行更具体的API调用,将JSON响应中返回的信息限制为更具体。
发布于 2019-06-05 02:27:32
在文本文件中,您可以执行以下操作:
awk '/"id"/ {print $1}' file
"id":"67e21117-891e-3019-8926-7571b3b0317f",
"id":"67e21117-891e-3019-8926-7571b3b0317f",
"id":"67e21117-891e-3019-8926-7571b3b0317f",
"id":"67e21117-891e-3019-8926-7571b3b0317f",
"id":"a1c4b268-3a6f-3b4c-bf12-0ded10f5d767",
"id":"a1c4b268-3a6f-3b4c-bf12-0ded10f5d767",
"id":"a1c4b268-3a6f-3b4c-bf12-0ded10f5d767",
"id":"a1c4b268-3a6f-3b4c-bf12-0ded10f5d767",
"id":"772658d2-8510-3834-856b-6cfd7e8871f6",
"id":"772658d2-8510-3834-856b-6cfd7e8871f6",
"id":"772658d2-8510-3834-856b-6cfd7e8871f6",
"id":"772658d2-8510-3834-856b-6cfd7e8871f6",
https://stackoverflow.com/questions/56449280
复制相似问题