Skip to content
Open
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions jq/script-01.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,5 @@ 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
2 changes: 2 additions & 0 deletions jq/script-02.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,5 @@ 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
2 changes: 2 additions & 0 deletions jq/script-03.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,5 @@ 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
2 changes: 2 additions & 0 deletions jq/script-04.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,5 @@ 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
2 changes: 2 additions & 0 deletions jq/script-05.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,5 @@ 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
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you think of another way to achieve the same without the slashes and brackets to improve readability?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, one simpler option is jq -r '.[] | .name + " " + .city' ./scores.json

6 changes: 6 additions & 0 deletions jq/script-06.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,9 @@ 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




Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same as above

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, one simpler option is jq -r .[] | .name + " " + (.scores[0] | tostring)' scores.json

3 changes: 3 additions & 0 deletions jq/script-07.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,6 @@ 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
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same as above

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, one simpler option is jq -r '.[] | .name + " " + (.scores[-1] | tostring)' scores.json