我有一个像这样的 JSON 字符串(MacOS):
[{
"id": 3624,
"created_at": "2016-10-21T20:51:16.000+08:00",
},
{
"id": 3625,
"created_at": "2016-10-22T08:09:16.000+08:00",
},
{
"id": 3626,
"created_at": "2016-10-23T09:19:55.000+08:00",
}]
Run Code Online (Sandbox Code Playgroud)
我想从“2016-10-21”到“2016-10-22”中选择“created_at”;我想得到这样的结果:
[{
"id": 3624,
"created_at": "2016-10-21T20:51:16.000+08:00",
},
{
"id": 3625,
"created_at": "2016-10-22T08:09:16.000+08:00",
}]
Run Code Online (Sandbox Code Playgroud)
有人可以指出我正确的方向吗?
问题已经解决了。 现在,我使用此代码选择精确到分钟的日期,希望对其他人有用:
jq --arg s '2016-10-26T18:16' --arg e '2016-10-27T20:24' '[($s, $e) | strptime("%Y-%m-%dT%H:%M") | mktime] as $r
| map(select(
(.updated_at[:19] | strptime("%Y-%m-%dT%H:%M:%S") | mktime) as $d
| $d >= $r[0] and $d <= $r[1]))' <<< "$requestJson"
Run Code Online (Sandbox Code Playgroud)