【发布时间】:2014-04-18 12:50:55
【问题描述】:
我有一个包含许多 json 记录的文本文件,格式类似于以下内容:
{"foo":"1","bar":"2","baz":"1","fu":"1"}
{"foo":"3","bar":"2","baz":"4","fu":"2","barf":"1"}
{"foo":"2","bar":"4","baz":"5","fu":"3"}
{"foo":"5","blerg":"1","bar":"6","baz":"6","fu":"7"}
如何使用标准的 unix 命令行工具来过滤掉多个不相邻的字段?
例如。假设我只想选择 bar 和 fu,我希望我的输出看起来像:
"bar":"2" "fu":"1"
...或类似的东西。谢谢!
【问题讨论】:
-
我看不出使用复杂的正则表达式来获取 JSON 解析器会立即得到的东西的意义。
grep不适合这个,也许sed更好。 -
对几乎任何东西都开放 - 我仅限于几乎所有标准 CLI 工具
标签: json unix command-line grep