常用示例
echo '{"OPT_STATUS": "SUCCESS","DATA": {"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9","expires_in": 3600,"token_type": "password","username": "admin"},"OPT_STATUS_CH": "成功","OPT_STATUS_EN": "Successful"}' | jq -r .DATA.access_token echo '{"DATA": [{"name": "Alice","age": 30,"city": "New York"},{"name": "Bob","age": 25,"city": "San Francisco"},{"name": "Charlie","age": 23,"city": "Los Angeles"}],"TYPE": "dict","OPT_STATUS": "SUCCESS","DESCRIPTION": ""}' | jq -r '.DATA | .[].name' # select条件过滤 echo '{"DATA": [{"name": "Alice","age": 30,"city": "New York"},{"name": "Bob","age": 25,"city": "San Francisco"},{"name": "Charlie","age": 23,"city": "Los Angeles"}],"TYPE": "dict","OPT_STATUS": "SUCCESS","DESCRIPTION": ""}' | jq .DATA | jq '.[] | select(.age >= 25)' echo '{"DATA": [{"name": "Alice","age": 30,"city": "New York"},{"name": "Bob","age": 25,"city": "San Francisco"},{"name": "Charlie","age": 23,"city": "Los Angeles"}],"TYPE": "dict","OPT_STATUS": "SUCCESS","DESCRIPTION": ""}' | jq '.DATA | .[] | select(.name=="Charlie")' echo '{"DATA": [{"name": "Alice","age": 30,"city": "New York"},{"name": "Bob","age": 25,"city": "San Francisco"},{"name": "Charlie","age": 23,"city": "Los Angeles"}],"TYPE": "dict","OPT_STATUS": "SUCCESS","DESCRIPTION": ""}' | jq '.DATA | .[] | select(.name=="Charlie" and .age==23)' echo '{"DATA": [{"name": "Alice","age": 30,"city": "New York"},{"name": "Bob","age": 25,"city": "San Francisco"},{"name": "Charlie","age": 23,"city": "Los Angeles"}],"TYPE": "dict","OPT_STATUS": "SUCCESS","DESCRIPTION": ""}' | jq ".DATA | .[] | select(.name==\"Charlie\" or .age==25)" # 转换为数组 echo '{"DATA": [{"name": "Alice","age": 30,"city": "New York"},{"name": "Bob","age": 25,"city": "San Francisco"},{"name": "Charlie","age": 23,"city": "Los Angeles"}],"TYPE": "dict","OPT_STATUS": "SUCCESS","DESCRIPTION": ""}' | jq ".DATA | [.[].name,.[].city]" # 转换为对象 echo '{"DATA": [{"name": "Alice","age": 30,"city": "New York"},{"name": "Bob","age": 25,"city": "San Francisco"},{"name": "Charlie","age": 23,"city": "Los Angeles"}],"TYPE": "dict","OPT_STATUS": "SUCCESS","DESCRIPTION": ""}' | jq ".DATA | {"name":.[].name,"city":.[].city}"
参考链接:
https://jqlang.github.io/jq/manual/ # jq json格式化命令
https://www.cnblogs.com/websec80/p/17528197.html