Если вы посмотрите формальную документацию библиотеки JSON python, вы увидите, что вызов json.tool
должен быть python -mjson.tool
. Это указывает на то, что программа находится в файле tool.py
в json
каталоге вашей установки python или что она находится в файле __init__.py
в tool
каталоге json
вашей установки python.
Файл фактически является первым из двух, и его main()
функция составляет <20 строк кода, которые можно легко проанализировать:
- если нет аргументов, он работает как канал: JSON in и JSON out
- если есть один аргумент, который принимается как входной файл JSON, вывод в stdout
- есть два аргумента: первый - входной файл JSON, второй - выходной файл JSON.
Если вы укажете больше параметров, это фактически покажет использование:
$ python -m json.tool a b c
/opt/python/2.7.11/lib/python2.7/json/tool.py [infile [outfile]]
Это для версии 2.7 инструмента. Версия 3.5.1 имеет дополнительный параметр, и там отображаются параметры, если вы используете -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