Linuxコマンド

使い方

整形

$ cat /tmp/test.json | jq
{
  "_scroll_id": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
  "took": 1,
  "timed_out": false,
  "_shards": {
    "total": 1,
    "successful": 1,
    "failed": 0
  },
  "hits": {
    "total": 12345,
    "max_score": 1,
    "hits": [
      {
        "_index": "hoge-2018.07.18",
        "_type": "fuga",
        "_id": "nankanoid",
        "_score": 1,
        "_source": {
          "remote": "192.168.1.1",
          "menu_id": 1,
          "order_history_id": 2,
          "ordered_zone_id": 3,
          "zone_id": 4,
          "creative_id": 5,
          "action": "impression",
          "timestamp": "2018-07-18 09",
          "uuid": "XXXXX-XXXX-XXXX-XXXX-XXXXX",
          "created_at": "2018-07-18 09:00:01",
          "lait_uuid": "XXXX-XXXX-XXXX-XXXX-XXXX",
          "device": "pc",
          "browser": "Internet Explorer",
          "os": "Windows"
        }
      }
    ]
  }
}

整形しない

$ cat /tmp/test.json | jq -c
{"_scroll_id":"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX","took":1,"timed_out":false,"_shards":{"total":1,"successful":1,"failed":0},"hits":{"total":12345,"max_score":1,"hits":[{"_index":"hoge-2018.07.18","_type":"fuga","_id":"nankanoid","_score":1,"_source":{"remote":"192.168.1.1","menu_id":1,"order_history_id":2,"ordered_zone_id":3,"zone_id":4,"creative_id":5,"action":"impression","timestamp":"2018-07-18 09","uuid":"XXXXX-XXXX-XXXX-XXXX-XXXXX","created_at":"2018-07-18 09:00:01","lait_uuid":"XXXX-XXXX-XXXX-XXXX-XXXX","device":"pc","browser":"Internet Explorer","os":"Windows"}}]}}

{} の段落ごとに取得する

例1

$ cat /tmp/test.json | jq ._shards
{
 "total": 1,
 "successful": 1,
 "failed": 0
}

例2

$ cat /tmp/test.json | jq .hits.hits
[
 {
   "_index": "hoge-2018.07.18",
   "_type": "fuga",
   "_id": "nankanoid",
   "_score": 1,
   "_source": {
     "remote": "192.168.1.1",
     "menu_id": 1,
     "order_history_id": 2,
     "ordered_zone_id": 3,
     "zone_id": 4,
     "creative_id": 5,
     "action": "impression",
     "timestamp": "2018-07-18 09",
     "uuid": "XXXXX-XXXX-XXXX-XXXX-XXXXX",
     "created_at": "2018-07-18 09:00:01",
     "lait_uuid": "XXXX-XXXX-XXXX-XXXX-XXXX",
     "device": "pc",
     "browser": "Internet Explorer",
     "os": "Windows"
   }
 }
]

[] を除外する

$ cat /tmp/test.json | jq .hits.hits[]
{
 "_index": "hoge-2018.07.18",
 "_type": "fuga",
 "_id": "nankanoid",
 "_score": 1,
 "_source": {
   "remote": "192.168.1.1",
   "menu_id": 1,
   "order_history_id": 2,
   "ordered_zone_id": 3,
   "zone_id": 4,
   "creative_id": 5,
   "action": "impression",
   "timestamp": "2018-07-18 09",
   "uuid": "XXXXX-XXXX-XXXX-XXXX-XXXXX",
   "created_at": "2018-07-18 09:00:01",
   "lait_uuid": "XXXX-XXXX-XXXX-XXXX-XXXX",
   "device": "pc",
   "browser": "Internet Explorer",
   "os": "Windows"
 }
}

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS