From 88954597f0f91ddb52fc0e7c3f8c2cf4019cf582 Mon Sep 17 00:00:00 2001 From: SlimMicheals Date: Sun, 5 Apr 2026 20:44:38 +0200 Subject: [PATCH 01/11] extract name from person.json without quotes --- jq/script-01.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/jq/script-01.sh b/jq/script-01.sh index 95827f688..f6f802117 100755 --- a/jq/script-01.sh +++ b/jq/script-01.sh @@ -5,3 +5,4 @@ set -euo pipefail # The input for this script is the person.json file. # TODO: Write a command to output the name of the person. # Your output should be exactly the string "Selma", but should not contain any quote characters. +jq -r '.name' person.json \ No newline at end of file From 9414ec1306194a9121ff8c2528315f3f3e66e45e Mon Sep 17 00:00:00 2001 From: SlimMicheals Date: Sun, 5 Apr 2026 20:47:59 +0200 Subject: [PATCH 02/11] format address as single comma-separated line --- jq/script-02.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/jq/script-02.sh b/jq/script-02.sh index 21544d67b..d00ba7ad3 100755 --- a/jq/script-02.sh +++ b/jq/script-02.sh @@ -5,3 +5,4 @@ set -euo pipefail # The input for this script is the person.json file. # TODO: Write a command to output the address of the person, all on one line, with a comma between each line. # Your output should be exactly the string "35 Fashion Street, London, E1 6PX", but should not contain any quote characters. +jq -r '.address | join(", ")' person.json \ No newline at end of file From 64ae42f330d208667680be26c1e23e1531036bca Mon Sep 17 00:00:00 2001 From: SlimMicheals Date: Sun, 5 Apr 2026 20:54:19 +0200 Subject: [PATCH 03/11] fix command line output --- jq/script-03.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/jq/script-03.sh b/jq/script-03.sh index 3566f03ba..625d284a8 100755 --- a/jq/script-03.sh +++ b/jq/script-03.sh @@ -5,3 +5,4 @@ set -euo pipefail # The input for this script is the person.json file. # TODO: Write a command to output the name of the person, then a comma, then their profession. # Your output should be exactly the string "Selma, Software Engineer", but should not contain any quote characters. +jq -r '"\(.name), \(.profession)"' person.json \ No newline at end of file From db027ce2900c489f04125a508440c4f985330618 Mon Sep 17 00:00:00 2001 From: SlimMicheals Date: Sun, 5 Apr 2026 20:57:13 +0200 Subject: [PATCH 04/11] fix command to output each player --- jq/script-04.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/jq/script-04.sh b/jq/script-04.sh index 015997e18..7fb3777d1 100755 --- a/jq/script-04.sh +++ b/jq/script-04.sh @@ -6,3 +6,4 @@ set -euo pipefail # TODO: Write a command to output just the names of each player, one per line. # Your output should contain 6 lines, each with just one word on it. # Your output should not contain any quote characters. +jq -r '.[].name' scores.json \ No newline at end of file From 7c019f04de2215a652c220c7cbfe1b200beb39dd Mon Sep 17 00:00:00 2001 From: SlimMicheals Date: Sun, 5 Apr 2026 21:00:11 +0200 Subject: [PATCH 05/11] add command to output player names and cities --- jq/script-05.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/jq/script-05.sh b/jq/script-05.sh index 993fc9ee3..ab78fbad4 100755 --- a/jq/script-05.sh +++ b/jq/script-05.sh @@ -5,3 +5,4 @@ set -euo pipefail # The input for this script is the scores.json file. # TODO: Write a command to output the names of each player, as well as their city. # Your output should contain 6 lines, each with two words on it. +jq -r '.[] | "\(.name) \(.city)"' scores.json From 14f740df2a5ef04acdfefbe3ebccf3aa9ab7c1bb Mon Sep 17 00:00:00 2001 From: SlimMicheals Date: Sun, 5 Apr 2026 21:02:29 +0200 Subject: [PATCH 06/11] add command to output players name and first attempt score --- jq/script-06.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/jq/script-06.sh b/jq/script-06.sh index 8b6e74c52..47fee35b5 100755 --- a/jq/script-06.sh +++ b/jq/script-06.sh @@ -6,3 +6,4 @@ set -euo pipefail # TODO: Write a command to output just the names of each player along with the score from their first attempt. # Your output should contain 6 lines, each with one word and one number on it. # The first line should be "Ahmed 1" with no quotes. +jq -r '.[] | "\(.name) \(.scores[0])"' scores.json From cf794cb8e21ec4168251050f6b76caa2f72ff925 Mon Sep 17 00:00:00 2001 From: SlimMicheals Date: Sun, 5 Apr 2026 21:05:14 +0200 Subject: [PATCH 07/11] add command to extract players names and last attempt scores --- jq/script-07.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/jq/script-07.sh b/jq/script-07.sh index d43f93d1b..f20ab3d7f 100755 --- a/jq/script-07.sh +++ b/jq/script-07.sh @@ -6,3 +6,4 @@ set -euo pipefail # TODO: Write a command to output just the names of each player along with the score from their last attempt. # Your output should contain 6 lines, each with one word and one number on it. # The first line should be "Ahmed 4" with no quotes. +jq -r '.[] | "\(.name) \(.scores[-1])"' scores.json From fcde46f83f4213ad96d91aa9185d3409963b8242 Mon Sep 17 00:00:00 2001 From: SlimMicheals Date: Sun, 5 Apr 2026 21:07:42 +0200 Subject: [PATCH 08/11] add command line to output players and how many times they played --- jq/script-08.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/jq/script-08.sh b/jq/script-08.sh index 6671fd1ba..ecd84638c 100755 --- a/jq/script-08.sh +++ b/jq/script-08.sh @@ -6,3 +6,4 @@ set -euo pipefail # TODO: Write a command to output just the names of each player along with the number of times they've played the game. # Your output should contain 6 lines, each with one word and one number on it. # The first line should be "Ahmed 3" with no quotes. +jq -r '.[] | "\(.name) \(.scores | length)"' scores.json \ No newline at end of file From fb6b9d3e3642bb961394deddc0526f0134d4bff7 Mon Sep 17 00:00:00 2001 From: SlimMicheals Date: Sun, 5 Apr 2026 21:10:03 +0200 Subject: [PATCH 09/11] output player names with total scores --- jq/script-09.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/jq/script-09.sh b/jq/script-09.sh index c2536a536..3ce4c2b71 100755 --- a/jq/script-09.sh +++ b/jq/script-09.sh @@ -6,3 +6,4 @@ set -euo pipefail # TODO: Write a command to output just the names of each player along with the total scores from all of their games added together. # Your output should contain 6 lines, each with one word and one number on it. # The first line should be "Ahmed 15" with no quotes. +jq -r '.[] | "\(.name) \(.scores | add)"' scores.json From 71b2080ab5dea8588edc719b040182f4d6d9bae0 Mon Sep 17 00:00:00 2001 From: SlimMicheals Date: Sun, 5 Apr 2026 21:12:11 +0200 Subject: [PATCH 10/11] add command to sum first scores of all players --- jq/script-10.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/jq/script-10.sh b/jq/script-10.sh index 8e9d75f07..e1334079b 100755 --- a/jq/script-10.sh +++ b/jq/script-10.sh @@ -5,3 +5,4 @@ set -euo pipefail # The input for this script is the scores.json file. # TODO: Write a command to output the total of adding together all players' first scores. # Your output should be exactly the number 54. +jq '[.[].scores[0]] | add' scores.json From 09eded7c5545eb732bb315d55150b65e36f17d83 Mon Sep 17 00:00:00 2001 From: SlimMicheals Date: Sun, 5 Apr 2026 21:14:34 +0200 Subject: [PATCH 11/11] add command to sum all scores from all players --- jq/script-11.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/jq/script-11.sh b/jq/script-11.sh index d2337a6b2..943b36a3f 100755 --- a/jq/script-11.sh +++ b/jq/script-11.sh @@ -5,3 +5,4 @@ set -euo pipefail # The input for this script is the scores.json file. # TODO: Write a command to output the total of adding together all scores from all games from all players. # Your output should be exactly the number 164. +jq '[.[].scores[]] | add' scores.json