可以使用awk的正则表达式来匹配每行的json,然后使用awk的字符串函数来提取指定的值的内容。

例如,假设我们要提取每行json中的"name"字段的值,可以使用以下命令:

awk -F':' '{if($1 ~ /"name"/) {gsub(/"/, "", $2); print $2}}' file.json

这个命令将会:

  1. 使用":"作为分隔符来分割每行json。
  2. 检查每行json中是否有"name"字段,如果有,则执行下一步操作。
  3. 使用gsub函数删除字段值中的双引号。
  4. 打印出提取出来的"name"字段的值。

请注意,这个命令仅适用于每行都是一个完整的json的情况,如果行内有多个json,或者json跨行,则需要使用更复杂的技术来处理。

awk 如何正则匹配每行都为一个json其中json指定的值的内容

原文地址: https://www.cveoy.top/t/topic/5Qh 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录