If you want to read and output the text from a JSON file, you can do that in many ways. Let's take a look at some of them.
Option 1: Using cat command
# cat data.json
{
"city": "New York",
"forecast": [
{ "date": "2023-08-18", "temp": 78 },
{ "date": "2023-08-19", "temp": 82 },
{ "date": "2023-08-20", "temp": 75 },
{ "date": "2023-08-21", "temp": 70 },
{ "date": "2023-08-22", "temp": 73 }
]
}
Option 2: Using head command
If you want to read and display only x number of files from the top of the JSON file.
# head -n 5 data.json
{
"city": "New York",
"forecast": [
{ "date": "2023-08-18", "temp": 78 },
{ "date": "2023-08-19", "temp": 82 },
Option 3: Using tail command
If you want to read and display only x number of files from the bottom of the JSON file.
# tail -n 5 data.json
{ "date": "2023-08-20", "temp": 75 },
{ "date": "2023-08-21", "temp": 70 },
{ "date": "2023-08-22", "temp": 73 }
]
}
If you want to read and parse or manipulate a JSON file, then you should make use of the jq binary.
Make sure to install jq package
apt install jq
Example: Parsing and Manipulating JSON file
-
Display the name of the city from the JSON file:
# jq '.city' data.json
"New York"
-
Display the temp for each day:
# jq '.forecast[].temp' data.json
78
82
75
70
73
-
Calculate average temp from JSON:
# jq '[.forecast[].temp] | add / length' data.json
75.6
Facing issues? Have Questions? Post them here! I am happy to answer!
Author Info:
Rakesh (He/Him) has over 14+ years of experience in Web and Application development. He is the author of insightful How-To articles for Code2care.
Follow him on: X
You can also reach out to him via e-mail: rakesh@code2care.org
More Posts related to Bash,
- How to use Autocomplete and Autosuggestion in Shell Commands
- Bash How to Save Output of a Command to a Variable
- How to know the current shell you are logged in?
- How to Echo Bash Command to a File
- Bash Command to Get Absolute Path for a File
- How to Split a String based on Delimiter in Bash Scripting
- Bash: Command Line Arguments to Bash Script Examples
- Bash Command to Download a File From URL
- How to check if a Command Exists using Bash Script
- Ways to Increment a counter variable in Bash Script
- Know Bash shell version command
- Bash command to Read, Output and Manipulate JSON File
- Bash Command to Base64 Decode a String
- Bash Command to Check Python Version
- Bash: Command to Find the Length of a String
- What is $$ in Bash Shell Script- Special Variable
- Bash - How to check if a Command Failed?
- List all Username and User ID using Bash Command
- Command to Sort File In Reverse Order [Unix/Linux/macOS]
- bash: netstat: command not found
- Bash Command To Go Back To Previous Directory
- [Fix] bash: script.sh: /bin/bash^M: bad interpreter: No such file or directory
- How to check your IP using bash for Windows?
- Bash Command To Check If File Exists
- Convert String from uppercase to lowercase in Bash
More Posts:
- Fix: Error: Cannot find module /node-examples/init - JavaScript
- Spring Boot: @RequestBody not applicable to method - Java
- Powershell Comments Examples - Powershell
- How to read int value using Scanner Class Java - Java
- reCaptcha Verification expired. Check the checkbox again - Html
- How to upgrade Docker Desktop on Mac - MacOS
- PowerShell Switch Statement with Examples - Powershell
- How to install Java OpenJDK 11 on Alpine Linux - Java