【发布时间】:2020-11-02 14:47:41
【问题描述】:
我正在尝试从 Cloudflare 防火墙规则中提取 IPv4 和 IPv6 地址,以便在另一个命令中使用。
这是我要过滤的完整示例 json 响应:
{
"result": {
"id": "78839c481cd8424fa8f0f06abd33b55f",
"paused": false,
"description": "Test",
"action": "block",
"priority": 1,
"filter": {
"id": "68f2efc4fa6e43f584dd4b60aca09901",
"expression": "(ip.src in {192.168.1.1 192.168.1.2 2408:14c:dc83:9119:f9f6:c105:923:a5e3})",
"paused": false
},
"created_on": "2020-11-02T13:48:31Z",
"modified_on": "2020-11-02T13:49:02Z"
},
"success": true,
"errors": [],
"messages": []
}
我只想提取表达式字段内的任何 IPv4 或 IPv6 地址,因此在本例中为192.168.1.1 192.168.1.2
如何在bash 中执行此操作?
谢谢!
【问题讨论】:
-
您是否可以访问
jq实用程序,或者您可以安装它。使用此工具解决问题将是微不足道的。 StackOverlow 上的一个好问题将包括您解决问题的最佳尝试。我们在这里帮助您修复您对编程的理解,而不是为您编写代码。祝你好运。