0

Below is my json which I need to process using jq in bash script. I need to get the "Id" column value. Since in this json there are 3 records, record with maximum value id would be returned. So after processing of below json I should get 170. I am newbie and have very limited exposure to bash.

{
  "count": 3,
  "value": [
    {
      "properties": {},
      "tags": [],          "validationResults": [],
      "plans": [
        {
          "planId": "49699e0f-b893-4633-bc05-754b8a562d07"
        }
      ],          "triggerInfo": {},
      "id": 170,
      "buildNumber": "20181011.8",          "status": "completed",          "result": "succeeded",          "queueTime": "2018-10-11T15:56:24.9611153Z",          "startTime": "2018-10-11T15:56:28.3668144Z",          "finishTime": "2018-10-11T15:57:20.5163422Z",
      "url": "https://indiatelecom.visualstudio.com/d354caa2-2e88-414a-829b-25df3aceaaaf/_apis/build/Builds/170",
      "buildNumberRevision": 8,          "uri": "vstfs:///Build/Build/170",
      "sourceBranch": "refs/heads/master",          "sourceVersion": "4303c19f8fda79e35fcb598219d5dca6bb274c2d",
      "priority": "normal",          "reason": "manual",          "lastChangedDate": "2018-10-11T15:57:20.797Z",          "parameters": "{\"system.debug\":\"false\"}",
      "orchestrationPlan": {
        "planId": "49699e0f-b893-4633-bc05-754b8a562d07"
      },          "keepForever": false,          "retainedByRelease": false,          "triggeredByBuild": null
    },
    {          "properties": {},          "tags": [],          "validationResults": [],
      "plans": [         {              "planId": "15026a2f-c725-4e52-974b-61e01a940661"
        }          ],
      "triggerInfo": {},
      "id": 160,
      "buildNumber": "20181009.20",          "status": "completed",          "result": "succeeded",          "queueTime": "2018-10-09T16:47:42.2954075Z",          "startTime": "2018-10-09T16:47:43.8034575Z",
      "finishTime": "2018-10-09T16:48:35.8340469Z",          "url": "https://indiatelecom.visualstudio.com/d354caa2-2e88-414a-829b-25df3aceaaaf/_apis/build/Builds/160",
      "buildNumberRevision": 20,          "uri": "vstfs:///Build/Build/160",
      "sourceBranch": "refs/heads/master",          "sourceVersion": "19a55c7482083785265b86015150521b40230c11",
      "priority": "normal",          "reason": "manual",
      "lastChangedDate": "2018-10-09T16:48:36.057Z",          "parameters": "{\"system.debug\":\"false\"}",
      "orchestrationPlan": {
        "planId": "15026a2f-c725-4e52-974b-61e01a940661"
      },
      "keepForever": false,          "retainedByRelease": false,
      "triggeredByBuild": null        },
    {
      "properties": {},          "tags": [],
      "validationResults": [],          "plans": [
        {
          "planId": "e45d9da8-4d95-42b7-aa23-478e1c1c49f5"
        }
      ],
      "triggerInfo": {},
      "id": 147,
      "buildNumber": "20181009.7",          "status": "completed",
      "result": "succeeded",          "queueTime": "2018-10-09T15:15:47.0248009Z",
      "startTime": "2018-10-09T15:15:50.8899892Z",          "finishTime": "2018-10-09T15:16:47.7866356Z",
      "url": "https://indiatelecom.visualstudio.com/d354caa2-2e88-414a-829b-25df3aceaaaf/_apis/build/Builds/147",
      "buildNumberRevision": 7,          "uri": "vstfs:///Build/Build/147",
      "sourceBranch": "refs/heads/master",          "sourceVersion": "70fccb138a2f2a9dfe18290c468959102f504067",
      "priority": "normal",          "reason": "manual",
      "lastChangedDate": "2018-10-09T15:16:48.16Z",
      "parameters": "{\"system.debug\":\"false\"}",          "orchestrationPlan": {
        "planId": "e45d9da8-4d95-42b7-aa23-478e1c1c49f5"
      },          "keepForever": false,          "retainedByRelease": false,
      "triggeredByBuild": null        }
  ]    }
0

1 Answer 1

3

The id's are stored in an array under the key value. .value[].id lists the ids, if you put them into an array, you can call max on it:

jq '[.value[].id] | max' < file.json
Sign up to request clarification or add additional context in comments.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.