Nowadays, JSON is everywhere, in web apis
, in configuration files, even in logs. JSON is the default format used to structure data. Because it is used so much, there will be times when we will need to process JSON from the command line. Could you imagine doing this with grep
, sed,
or other conventional tools? That would be quite a challenge.
Luckily for us, there is a simple Command-line tool called jq
that we can use to query JSON files. It comes with its own language syntax, as we will see in just a few minutes.
First let's install jq
with the following command:
sudo apt install jq
Now let's use an example file, a dummy access log in JSON format: access.log
, which we can also find in the course GitHub repository.
Let's start with some simple queries:
jq . access.log
We will print the JSON objects back to the screen, in a pretty format:
If we want to grab the request
method from each request, run the following:
jq '.requestMethod' access.log