[jq] 特定の文字列を含まないプロパティを持つオブジェクトだけ取り出す

作成日: 2021年05月05日

not を使うと、特定の文字列を含むプロパティを持つオブジェクトを除外することができます。下記の例では、.name プロパティに to が含まれていないオブジェクトを取り出しています。

echo '[{"name": "Taro", "age": 25},{"name": "Satoshi", "age": 30}]' | jq '.[] | select(.name | contains("to") | not)'

実行結果は下記となります。

{
  "name": "Taro",
  "age": 25
}
jq