我有一个大型的
JSON文件,它是一个对象的对象,我想在对象键之后拆分成单独的文件名.是否可以使用jq或任何其他现成的工具来实现这一目标?
原始JSON采用以下格式
{“item1”:{…},“item2”:{…},…}
解决方法
这应该给你一个开始:
for f in `cat input.json | jq -r 'keys[]'` ; do cat input.json | jq ".$f" > $f.json done
或者当你坚持使用更像一些似乎更喜欢的bashy语法:
for f in $(jq -r 'keys[]') ; do jq ".[\"$f\"]" < input.json > "$f.json" done < input.json