使用Linux bash命令将IP范围扩展为单个IP地址?

时间:2018-02-04 14:02:35

标签: bash shell awk sed ip

这是我处理此问题的最佳方法?我觉得awk可能是最好的方式,但不知道从哪里开始。 我有一个文本文件,其中包含IP地址和范围,如下例所示:

10.10.115.69
10.10.128.6 - 10.10.128.7
10.10.128.20
10.10.128.28
10.10.128.38 - 10.10.128.53
10.10.128.70 - 10.10.128.71
10.10.128.130 - 10.10.128.144
10.10.128.232 - 10.10.128.233
10.10.130.5
10.10.132.5

我正试着让他们全都进入他们自己的个人地址。所以如上所述'10 .10.128.38 - 10.10.128.53'......我希望将其转换为:

预期产出:

10.10.128.20
10.10.128.28
10.10.128.38
10.10.128.39
10.10.128.40
<snip>
10.10.128.52
10.10.128.53
10.10.128.70
10.10.128.71
<etc.>

当然保留包含在输出中的单个主机IP,只是扩展范围部分。

希望这是有道理的。

编辑:评论表明这是另一个确切问题的副本。请有人可以链接到我,因为我没有找到它。我是新来的,所以不太适应速度。

我的预期输出如上所述,我不是在生成器之后,而是扩展范围的方法,在它们<start IP> - <end_IP>中加上' - '的行,同时保留那些仍然存在的单个行。 / p>

0 个答案:

没有答案