Linux使用命令行解析JSON数据获取属性值

时间:2021-07-11 17:32:39

在Linux有几个办法可以很方便在命令行解析JSON数据

jq

curl -s 'http://example.com/api/user' | jq -r '.name'

Python

使用Python也可以很方便地解析JSON数据

Python 2

curl -s 'http://example.com/api/user'| python -c "import sys, json; print json.load(sys.stdin)['name']"

Python 3

curl -s 'http://example.com/api/user' | python3 -c "import sys, json; print(json.load(sys.stdin)['name'])"

如需设置解析的编码,如utf8,在调用命令前执行:

export PYTHONIOENCODING=utf8

Node.js

也可以使用Node的JSON.parse

node -pe 'JSON.parse(process.argv[1]).name' "$(curl -s http://example.com/api/user)"