Linux/コマンド/jq/変数

Linux/コマンド/jq/変数

これでとりあえず JSON の中身がそのまま全部出力される

$ cat hoge.json | jq '.'

ここでこのようにするとその一部を保持しておいて後に再利用することができる。 つまり変数のような機能が jq にはある。

$ cat hoge.json | jq '. | .hoge as $a | .'

これだと JSON 中の hoge というキーを持つ値が変数 $a に代入される。

特徴的な動きとしては、この代入記述はフィルタの途中に書けるのではあるが出力せず何もフィルタしない。 なのでその後に再び全件表示のフィルタをつなげると、代入前の値がそのまま全部出てくる。

その後このように書くと値を取り出すことができる。

$ cat hoge.json | jq '. | .hoge as $a | . | $a'
linux/command/jq/val.txt · 最終更新: 2019-07-15 10:48 by ore