【shell】jqにシェルスクリプトの変数を渡す方法

jq
スポンサーリンク

はじめに

この記事ではjqにbash等のshellで定義した変数を渡す方法を記載します。

jqにシェルの変数を渡す方法

Bash等のシェルスクリプトで定義した変数の値をjqで参照するには、実行時にオプションで “–arg” を指定します。

jq Manual (development version)

例えばシェルで “$BODY_TEXT” という変数を定義していた場合、次のように “–arg body $BODY_TEXT” を指定することで、selectを使用する際に “$body” としてシェルの変数の値を使用できます。

$ cat sample.json | jq --arg body $BODY_TEXT '.content | select( .body == $body )'