【发布时间】:2018-03-11 22:35:57
【问题描述】:
在 Ubuntu 上,我有
jq '.[] | {addr: .addr, subver: .subver, inbound: .inbound, synced_blocks: .synced_blocks} | select(.synced_blocks < 77982)'
{
"addr": "299.247.7.254:8268",
"subver": "/String:0.22.5.7/",
"inbound": false,
"synced_blocks": 77979
}
{
"addr": "228.290.206.224:8268",
"subver": "/String:0.22.5.6/",
"inbound": false,
"synced_blocks": 77980
}
{
"addr": "208.62.262.244:55226",
"subver": "/String:0.22.5.7/",
"inbound": true,
"synced_blocks": 77978
}
{
"addr": "200.2.222.25:50452",
"subver": "/String:0.22.5.7/",
"inbound": true,
"synced_blocks": 77980
}
{
"addr": "220.92.79.44:50970",
"subver": "/String:0.22.4.2/",
"inbound": true,
"synced_blocks": -2
}
{
"addr": "45.22.228.69:57462",
"subver": "/String:0.22.5.7/",
"inbound": true,
"synced_blocks": 77980
}
{
"addr": "29.206.256.229:8268",
"subver": "/String:0.22.5.7/",
"inbound": false,
"synced_blocks": 77980
}
还有
select(.subver | contains("0.22.5.7") | not)
用于显示 subver 不包含“0.22.5.7”的结果。但我不能同时满足这两种情况。
如何仅显示 subver 不包含“0.22.5.7”或 .synced_blocks
【问题讨论】:
-
如果您能更准确地(用英文?)指定“不包含”的含义,那将会很有帮助。 (我没有否决这个问题,但这是我最关心的问题!)
-
是 /String:0.22.4.2/ 中的“0.22.5.7”