$ echo '{ "foo": "lorem", "bar": "ipsum" }' \
> | python -c'import fileinput, json;
> print(json.dumps(json.loads("".join(fileinput.input())),
> sort_keys=True, indent=4))'
{
"bar": "ipsum",
"foo": "lorem"
}
หมายเหตุ: มันไม่ได้เป็นวิธีที่จะทำมัน
เหมือนกันใน Perl:
$ cat json.txt \
> | perl -0007 -MJSON -nE'say to_json(from_json($_, {allow_nonref=>1}),
> {pretty=>1})'
{
"bar" : "ipsum",
"foo" : "lorem"
}
หมายเหตุ 2: ถ้าคุณเรียกใช้
echo '{ "Düsseldorf": "lorem", "bar": "ipsum" }' \
| python -c'import fileinput, json;
print(json.dumps(json.loads("".join(fileinput.input())),
sort_keys=True, indent=4))'
คำที่อ่านได้อย่างดีกลายเป็น \ u เข้ารหัส
{
"D\u00fcsseldorf": "lorem",
"bar": "ipsum"
}
หากที่เหลือของท่อของคุณได้อย่างสง่างามจะจัดการ Unicode และคุณต้องการ JSON ของคุณยังเป็นมิตรกับมนุษย์เพียงแค่การใช้งาน ensure_ascii=False
echo '{ "Düsseldorf": "lorem", "bar": "ipsum" }' \
| python -c'import fileinput, json;
print json.dumps(json.loads("".join(fileinput.input())),
sort_keys=True, indent=4, ensure_ascii=False)'
และคุณจะได้รับ:
{
"Düsseldorf": "lorem",
"bar": "ipsum"
}