You can pipe stdout into python -mjson.tool to validate it. It makes for quick and easy json validation on the command line.
We'll create a simple json file:
> somefile.txt
{"someval": "something", "anotherval": 3}
Now pipe this into json.tools and check the output.
$ cat somefile.txt | python -mjson.tool
{
"anotherval": 3,
"someval": "something"
}
Cool. It even formatted it nicely for us. Let's break it and see what happens.
Single quotes are not valid according rfc4627.
> somefile.txt
{'someval': 'something', 'anotherval': 3}
$ cat somefile.txt | python -mjson.tool
Expecting property name: line 1 column 2 (char 1)
Not the most useful traceback, but at least you know it's not valid.
We'll create a simple json file:
> somefile.txt
{"someval": "something", "anotherval": 3}
Now pipe this into json.tools and check the output.
$ cat somefile.txt | python -mjson.tool
{
"anotherval": 3,
"someval": "something"
}
Cool. It even formatted it nicely for us. Let's break it and see what happens.
Single quotes are not valid according rfc4627.
> somefile.txt
{'someval': 'something', 'anotherval': 3}
$ cat somefile.txt | python -mjson.tool
Expecting property name: line 1 column 2 (char 1)
Not the most useful traceback, but at least you know it's not valid.