[jq] 配列から null の要素を除外する
作成日: 2026年09月13日
jq の select を使用すると、配列から null の要素を除外できます。下記の例では、null 以外の要素だけを新しい配列として取得しています。
echo '[1, null, 2, null, 3]' | jq 'map(select(. != null))'
実行結果は下記のとおりです。
[
1,
2,
3
]
説明
select(. != null)は、要素がnullではない場合だけ通します。map(...)で囲むと、条件に一致した要素を配列として返します。0、false、空文字列はnullではないため、この例では除外されません。