опустить дочерние значения с помощью jq - PullRequest
0 голосов
/ 25 апреля 2018

У меня есть следующий документ

~/ cat /tmp/stuff2 | jq '.'
{
  "x": {
    "a": {
      "c1": 2,
      "c2": "sss"
    },
    "b": {
      "c1": 3,
      "c2": "sfs",
      "c3": {
        "d1": "aa",
        "d2": 3
      }
    },
    "c": {
      "c1": 5,
      "c2": "ssy"
    },
    "d": {
      "c1": 8,
      "c2": "esy"
    }
  }
}

Я хотел бы сделать что-то вроде следующего:

~/ cat /tmp/stuff2 | jq '.x | <1st level|not child>'
{
  "a",
  "b",
  "c",
  "d"
}

Но я не могу найти способ опустить подзначения или дочерний элементиз этих индексов.

Заранее спасибо.

1 Ответ

0 голосов
/ 25 апреля 2018

Я думаю, вы хотите keys:

jq '.x|keys' input.json
[
  "a",
  "b",
  "c",
  "d"
]
...