2016-09-28 7 views
0

私はJSONファイルを複数持っています。1つのJSONファイルに複数の「要素」をjqで処理する

{ 
    "name": "Name 1", 
    "foo": "Bar" 
} 
{ 
    "id": 123, 
    "bar": "Foo" 
} 

私は2番目の要素にしか興味だと私は要素の「インデックス」(すなわち、私は要素が含まれるフィールドのか分からない)で照会する必要があります。

jqでどうすれば実現できますか?

答えて

2

jqのバージョンに応じていくつかの回答がありますので、ここでは一般的で一般的に役立つ回答に焦点を当てます。

  1. jq -s '.[1]'

  2. でJQ 1.4、後で、オブジェクトに使用JQフィルタ.[]の順を保存するにように、第二JSONエンティティを取得する-s(「吸い込み」)オプションを使用しキー。 (あなたがキー名について何も知らない場合JQ 1.3を使用して、あなたは運が悪いかもしれません。)例えば、後でJQ 1.4以上を使用して:

$ jq '.[]' {"b":1, "a":2} 1 2

+0

SLURP、完璧:) – larsmoa

関連する問題