除了Extract data between two tags中的解决方案,其中提取了一组CIDR,现在我们只是遇到了一些更复杂的问题。
返回的结果如下:
<tr><td class='bold vmiddle'> Owner CIDR: </td><td><span class='jtruncate-text'><a href="http://3.abcdefg.com/ip-3/encoded/czovL215aXAubXMvdmlldy9pcF9hZGRyZXNzZXMvODAuMjQ1LjIyNS4w">80.245.225.0</a>/24, <a href="http://3.abcdefg.com/ip-3/encoded/czovL215aXAubXMvdmlldy9pcF9hZGRyZXNzZXMvODAuMjQ1LjIyNi4w">80.245.226.0</a>/23, <a href="http://3.abcdefg.com/ip-3/encoded/czovL215aXAubXMvdmlldy9pcF9hZGRyZXNzZXMvODAuMjQ1LjIyOC4w">80.245.228.0</a>/22, <a href="http://3.abcdefg.com/ip-3/encoded/czovL215aXAubXMvdmlldy9pcF9hZGRyZXNzZXMvODAuMjQ1LjIzMi4w">80.245.232.0</a>/22, <a href="http://3.abcdefg.com/ip-3/encoded/czovL215aXAubXMvdmlldy9pcF9hZGRyZXNzZXMvODAuMjQ1LjIzNi4w">80.245.236.0</a>/23, <a href="http://3.abcdefg.com/ip-3/encoded/czovL215aXAubXMvdmlldy9pcF9hZGRyZXNzZXMvODAuMjQ1LjIzOC4w">80.245.238.0</a>/24</span></td></tr>
它有6个CIDR:
80.245.225.0/24,80.245.226.0/23,80.245.228.0/22,80.245.232.0/22,80.245.236.0/23,80.245.238.0/24
事实上,对于其他查询,我们不知道会返回多少CIDR。
我们应该使用bash中的哪种解决方案?展开链接问题中的sed字符串?还是完全不同的东西?
有人可以帮忙吗?
答案 0 :(得分:1)
也许这可以帮到你;
grep -oE '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}</a>/[0-9]{1,2}' yourFile | sed 's/<\/a>//'
例如
user@host:/tmp$ grep -oE '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}</a>/[0-9]{1,2}' test | sed 's/<\/a>//'
80.245.225.0/24
80.245.226.0/23
80.245.228.0/22
80.245.232.0/22
80.245.236.0/23
80.245.238.0/24