【发布时间】:2021-04-14 16:58:46
【问题描述】:
我的截止日期很紧,正在努力解决一个不公开 SQL 视图但确实通过 API 公开一些元素的产品。希望在 curl 查询之后在 PIPE 中进行此处理。
复制:
curl -x GET -u {credentials} {endpoint fqdn} | jq
{
"total_count": 34,
"Passwords": [
{
"username": "testusername",
"category": null,
"device_ids": [],
"view_users": "",
"view_groups": "",
"last_pw_change": "2021-04-13T13:30:03Z",
"notes": "",
"storage": "Normal",
"use_only_users": "",
"label": "EXPIRED",
"view_edit_groups": "",
"first_added": "2021-04-13T13:30:03.790Z",
"use_only_groups": "",
"storage_id": 1,
"view_edit_users": "admin",
"password": "",
"id": 36,
"custom_fields": [
{
"notes": null,
"key": "expiry-event",
"value": "2021-4-13"
}
]
}
],
}
以上是通过 curl 返回的示例。我希望能够获取 USERNAME、STORAGE_ID,然后是 CUSTOM_FIELDS > KEY 和 CUSTOM_FIELDS > VALUE
当密钥 = 到期事件时 并且该键的 VALUE 早于今天的日期。
这可以通过 JQ 过滤实现吗?我不确定日期选项是 JQ 中的一个函数。但我们将不胜感激。
我尝试过滤到单独的数组中,但我收到了 FAILED TO BUILD BODY 错误。谢谢!
【问题讨论】:
-
理想情况下,结果会显示 username: testusername storage_id: 1 key: expiry-date value: 2021-4-13 并且只显示到期键(可能有超过 1 个自定义字段)并且日期在今天之前()
-
标题中提到了“jquery”。您指的是 “jq” 吗?此外,根据minimal reproducible example 指南,请给出一个完整的示例,显示您期望的与示例输入相对应的输出,顺便说一下,它有一个额外的逗号,使其在技术上作为 JSON 无效。
-
嗨@peak 对标题道歉。我已经纠正了。结果显示出来。它只是一个带有 | 的 API 请求。给jq。我也将其添加到示例中。