Posted at

jqでjson形式の行だけ抽出する

More than 1 year has passed since last update.

以下のようにjson形式の行とそうでない行が混在しているファイルにjqを実行してもparseエラーになってしまう。

php

java
{"lang": "go"}
ruby
{"lang": "perl"}

次のようなコマンドでjson形式の行だけ抽出することができた。

$ cat lang.json | jq -R 'fromjson? | select(type == "object")'

{
"lang": "go"
}
{
"lang": "perl"
}