📅  最后修改于: 2023-12-03 15:00:10.901000             🧑  作者: Mango
如果你使用 curl
命令获取 JSON 数据,在终端中输出是格式混乱的,所以我们需要格式化后才能查阅。此时我们就可以使用 jq
或 JSON.stringify()
函数将其格式化。以下是两种不同的方法漂亮打印 JSON 数据:
Jq 是一个针对JSON格式的轻量级命令行JSON处理工具。
在 Ubuntu 中,你可以通过以下命令来安装 jq:
sudo apt-get update && sudo apt-get install jq
在 macOS 中,你可以使用 brew 来安装 jq:
brew install jq
在 Windows 中,则需要下载安装包。可以从官网下载合适的版本。
使用以下 curl
命令来获取JSON数据:
curl https://someurl.com/data.json
使用 jq 格式化 JSON:
curl https://someurl.com/data.json | jq '.'
将结果输出到文件中:
curl https://someurl.com/data.json | jq '.' > data_formatted.json
以下是格式化后的 JSON 数据:
[
{
"id": 1,
"name": "Alice",
"age": 20
},
{
"id": 2,
"name": "Bob",
"age": 25
},
{
"id": 3,
"name": "Charlie",
"age": 30
}
]
jq
命令很强大,可以针对 JSON 进行各种处理,更多使用方法可以去官网查看文档。
JavaScript 提供了一个函数 JSON.stringify()
用于将 JSON 对象格式化为字符串。
以下 curl
命令获取 JSON 数据:
curl https://someurl.com/data.json
使用 JSON.stringify()
格式化 JSON:
curl https://someurl.com/data.json | node -pe "JSON.stringify(JSON.parse(require('fs').readFileSync('/dev/stdin').toString('utf-8')), null, 2)"
将结果输出到文件中:
curl https://someurl.com/data.json | node -pe "JSON.stringify(JSON.parse(require('fs').readFileSync('/dev/stdin').toString('utf-8')), null, 2)" > data_formatted.json
以下是格式化后的 JSON 数据:
[
{
"id": 1,
"name": "Alice",
"age": 20
},
{
"id": 2,
"name": "Bob",
"age": 25
},
{
"id": 3,
"name": "Charlie",
"age": 30
}
]
该方法需要使用 Node.js 来处理 JSON 数据。你需要先安装 Node.js。
以上两种方法都可以格式化 JSON 数据,让数据更易读。选择哪种方法取决于你的个人喜好和需要。如果你想使用非常灵活的方式处理 JSON,建议使用 jq
。如果你要快速将JSON数据格式化,可以使用 JavaScript 的 JSON.stringify()
。