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:
- How to Split a String based on Delimiter in Bash Scripting - Bash
- [Fix] Java Exception with Lambda - Cannot invoke because object is null - Java
- Tool: Convert Cron Expression To Plain English Text (Supports Quartz) - Tools
- Fix: Uncaught ReferenceError: exit is not defined - Node.js REPL - JavaScript
- How to check if variable is a number in JavaScript (NaN, typeof, regex) - JavaScript
- 3 Commands to stop Nginx Server - Linux
- Change String Date Format from One Form to Another in Java - Java
- Jupyter Notebook Markup Cell Table Example - Python