我可以通过提供源数据的链接来简化问题:
curl -sX GET "https://platform-explorer.pshenmic.dev/dataContract/GWRSAVFMjXx8HpQFaNJMqBV7MBgMK4br5UESsB4S31Ec/documents?page=23&limit=4" | jq -r .resultSet
在代码的最后,您可以更改“limit”的值,该值将决定输出多少个块。总共有1000多个块,我需要提取每个块的“标签”和“时间戳”信息。 ` 里面有相同的块,其中包含“数据”键的原始数据。
{
"identifier": "BVC9GYvsAwswBTfv4C2eziRZmZ6fUzrmMuvqv1VPdWG3",
"dataContractIdentifier": "GWRSAVFMjXx8HpQFaNJMqBV7MBgMK4br5UESsB4S31Ec",
"revision": 1,
"txHash": "03CFE8DAB06ECCCDB1430F149041775263F85DF335046C0421449AA73A46B4DA",
"deleted": false,
"data": "{\"label\":\"BFWookie\",\"records\":{\"identity\":\"Ea8acQwhQbbdaTLytoTiedEkTA89A8dyFpn9jTivr4Ht\"},\"preorderSalt\":\"hwebwVCxW+MwBmIqhoYIibGd7s7GOihv+MU6ae8Jj70=\",\"subdomainRules\":{\"allowSubdomains\":false},\"normalizedLabel\":\"bfw00k1e\",\"parentDomainName\":\"dash\",\"normalizedParentDomainName\":\"dash\"}",
"timestamp": "2024-10-23T05:40:07.923Z",
"isSystem": false,
"owner": "Ea8acQwhQbbdaTLytoTiedEkTA89A8dyFpn9jTivr4Ht"
}
我需要将“data”键中的数据转换为正确的格式:
{
"label": "BFWookie",
"records": {
"identity": "Ea8acQwhQbbdaTLytoTiedEkTA89A8dyFpn9jTivr4Ht"
},
"preorderSalt": "hwebwVCxW+MwBmIqhoYIibGd7s7GOihv+MU6ae8Jj70=",
"subdomainRules": {
"allowSubdomains": false
},
"normalizedLabel": "bfw00k1e",
"parentDomainName": "dash",
"normalizedParentDomainName": "dash"
}
我通过使用以下命令处理“data”键中的数据获得了最后一个:
echo "{\"label\":\"BFWookie\",\"records\":{\"identity\":\"Ea8acQwhQbbdaTLytoTiedEkTA89A8dyFpn9jTivr4Ht\"},\"preorderSalt\":\"hwebwVCxW+MwBmIqhoYIibGd7s7GOihv+MU6ae8Jj70=\",\"subdomainRules\":{\"allowSubdomains\":false},\"normalizedLabel\":\"bfw00k1e\",\"parentDomainName\":\"dash\",\"normalizedParentDomainName\":\"dash\"}" | jq
但是如何在第一个数据处理阶段快速完成这一任务呢? 或者其他选择?
您可以在检索数据时直接从数据密钥中提取、解码和格式化所需字段。这最大限度地减少了后处理。
curl -sX GET "https://platform-explorer.pshenmic.dev/dataContract/GWRSAVFMjXx8HpQFaNJMqBV7MBgMK4br5UESsB4S31Ec/documents?page=23&limit=4" | \
jq -r '.resultSet[] | .data | fromjson | .'