Si mira a través de la documentación formal de la biblioteca Python JSON, verá que la invocación de json.tool
debería ser python -mjson.tool
. Esto indica que el programa en el archivo tool.py
bajo el json
directorio de su instalación de Python, o que está en el archivo __init__.py
en el tool
directorio bajo json
en su instalación de Python.
El archivo es en realidad el primero de los dos y su main()
función es <20 líneas de código que se pueden analizar fácilmente:
- si no hay argumentos, funciona como una tubería: JSON in y JSON out
- si hay un argumento que se toma como archivo de entrada JSON, salida a stdout
- hay dos argumentos, el primero es el archivo de entrada JSON, el segundo el archivo de salida JSON
Si proporciona más parámetros, en realidad mostrará el uso:
$ python -m json.tool a b c
/opt/python/2.7.11/lib/python2.7/json/tool.py [infile [outfile]]
Eso es para la versión 2.7 de la herramienta. La versión 3.5.1 tiene un parámetro adicional y allí se muestran los parámetros si usa -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