pretty-print - Jq command - シェルスクリプトでJSONをプリティプリントするにはどうすればいいですか?

Jq join / json / unix / command-line / format

JSONを人間が読める形にフォーマットする(Unix)シェルスクリプトはありますか?

基本的には、以下のように変形させたいと考えています。

{ "foo": "lorem", "bar": "ipsum" }

...このようなものに:

{
    "foo": "lorem",
    "bar": "ipsum"
}

16 revs, 12 users 29%AnC



Answer #1

いつもはそうしています。

echo '{"test":1,"test2":2}' | python -mjson.tool

そして、セレクトデータ(ここでは "test "の値)を取得する。

echo '{"test":1,"test2":2}' | python -c 'import sys,json;data=json.loads(sys.stdin.read()); print data["test"]'

JSONデータがファイルの場合。

python -mjson.tool filename.json
curl -X GET -H "Authorization: Token wef4fwef54te4t5teerdfgghrtgdg53" http://testsite/api/ | python -mjson.tool