jq コマンドで jsonl の要素を追加・追加する方法のメモ。
json データ
$ cat test1.jsonl {"abc": "abc", "def": "def", "ghi": "ghi"}
要素の追加
以下で "jkl" に "abc" の値を追加します。
$ cat test1.jsonl | jq -c '. + {"jkl": .abc}' {"abc":"abc","def":"def","ghi":"ghi","jkl":"abc"}
要素の削除
以下で "ghi" の要素を削除します。
$ cat test1.jsonl | jq -c 'del(.ghi)' {"abc":"abc","def":"def"}
要素の追加・削除
| で連結することで追加、削除を1コマンドで実行します。
$ cat test1.jsonl | jq -c '. + {"jkl": .abc} | del(.ghi)' {"abc":"abc","def":"def","jkl":"abc"}