Pankaj
Pankaj

Reputation: 51

jq query not working in expected behaviour

{
  "data": {
    "AWS_ACCESS_KEY_ID": "topsecret",
    "AWS_SECRET_ACCESS_KEY": "s3cr3t"
  },
  "metadata": {
    "created_time": "2022-09-16T06:49:11.45818Z",
    "deletion_time": "",
    "destroyed": false,
    "version": 23
  }
}

I've above data and I want my input as:

"data": {
    "AWS_ACCESS_KEY_ID": "topsecret",
    "AWS_SECRET_ACCESS_KEY": "s3cr3t"
  }

jq query like this jq .data file.json is only giving me output like this:

{
  "AWS_ACCESS_KEY_ID": "topsecret",
  "AWS_SECRET_ACCESS_KEY": "s3cr3t"
 }

Please help.

Upvotes: 0

Views: 45

Answers (1)

Thor
Thor

Reputation: 47099

Are you sure you want invalid json? You can preserve the key if you enclose it in curly braces, e.g.:

jq '{ data }'

Output:

{
  "data": {
    "AWS_ACCESS_KEY_ID": "topsecret",
    "AWS_SECRET_ACCESS_KEY": "s3cr3t"
  }
}

Note that the above is a shorthand for { "data": .data }

Upvotes: 2

Related Questions