Se você examinar a documentação formal da biblioteca JSON python, verá que a chamada de json.tool
deve ser python -mjson.tool
. Isso indica que o programa no arquivo tool.py
no json
diretório da instalação do python ou que ele está no arquivo __init__.py
do tool
diretório json
da instalação do python.
O arquivo é realmente o primeiro dos dois e sua main()
função é <20 linhas de código que podem ser facilmente analisadas:
- se não houver argumentos, ele funciona como um canal: JSON in e JSON out
- se houver um argumento usado como arquivo de entrada JSON, envie para stdout
- existem dois argumentos: o primeiro é o arquivo de entrada JSON; o segundo, o arquivo de saída JSON
Se você fornecer mais parâmetros, ele realmente mostrará o uso:
$ python -m json.tool a b c
/opt/python/2.7.11/lib/python2.7/json/tool.py [infile [outfile]]
Isso é para a versão 2.7 da ferramenta. A versão 3.5.1 possui um parâmetro extra e os parâmetros são mostrados se você usar -h
:
$ python -m json.tool -h
usage: python -m json.tool [-h] [--sort-keys] [infile] [outfile]
A simple command line interface for json module to validate and pretty-print
JSON objects.
positional arguments:
infile a JSON file to be validated or pretty-printed
outfile write the output of infile to outfile
optional arguments:
-h, --help show this help message and exit
--sort-keys sort the output of dictionaries alphabetically by key