【发布时间】:2020-07-18 08:02:26
【问题描述】:
我经常收到发送给我的 HAR 文件(JSON),看起来像这样:
{
"log": {
"entries" : [
{
"request" : {
"url" : "test.css"
}
},
{
"request" : {
"url" : "test.ok"
}
},
{
"request" : {
"url" : "test.font"
}
},
{
"request" : {
"url" : "ok"
}
}
]
}
}
我不关心包含字体、CSS 或 JavaScript 的 URL 的请求。所以,我想使用jq 删除这些请求。鉴于 @iain-samuel-mclean-elder 中关于过滤和维护输入的 JSON 结构的 answer,我希望这样的事情能够奏效:
jq '[ .[] | select(.log.entries[].request.url | test("\\.(js|css|font)") | not) ]' < MyGoodHarFile.json
然而,这会产生错误:
jq: error (at <stdin>:25): Cannot iterate over null (null)
我做错了什么?如何使用jq 创建一个有效的 HAR 文件,排除对这些特定匹配 URL 的请求?
【问题讨论】: