免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: zhuxw112233
打印 上一主题 下一主题

[系统管理] 求批量把/27,/26或更大掩码转换成/32掩码的脚本 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2017-08-21 13:09 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
12 [报告]
发表于 2017-08-21 13:21 |只看该作者
回复 8# ws_mz1357


是需要可用IP,计算器不能批量,现在需要批量计算出来

论坛徽章:
0
13 [报告]
发表于 2017-08-21 15:44 |只看该作者
回复 11# 本友会机友会摄友会

这两个命令的是python的模块吗?yum不出来


  • import-module
  • get-content

论坛徽章:
0
14 [报告]
发表于 2017-08-21 15:50 |只看该作者
回复 9# baby_神

感谢,已经可以使用了,但批量的时候,不太好用。

能帮忙写一个可以调用源文件的脚本吗?

调用的文本里面是源地址

等于说我创建两个文本,一个做输入另一个做输出

麻烦了

论坛徽章:
0
15 [报告]
发表于 2017-08-21 15:56 |只看该作者
回复 10# 关阴月飞

之前看过您回复帖子的脚本,但是我在服务器上运行报错,提示usage ipadress netmask

论坛徽章:
0
16 [报告]
发表于 2017-08-21 17:51 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
39
辰龙
日期:2013-08-21 15:45:192015亚冠之广州富力
日期:2015-05-12 16:34:52亥猪
日期:2015-03-03 17:22:00申猴
日期:2015-03-03 17:21:37未羊
日期:2014-10-10 13:45:41戌狗
日期:2014-06-17 09:53:29巨蟹座
日期:2014-06-12 23:17:17双鱼座
日期:2014-06-10 12:42:44寅虎
日期:2014-06-09 12:52:172015亚冠之卡尔希纳萨夫
日期:2015-05-24 15:24:35黄金圣斗士
日期:2015-12-02 17:25:0815-16赛季CBA联赛之吉林
日期:2017-06-24 16:43:52
17 [报告]
发表于 2017-08-21 18:27 |只看该作者
回复 15# zhuxw112233

贴出你的代码,和报错详情

论坛徽章:
20
程序设计版块每日发帖之星
日期:2015-10-11 06:20:0015-16赛季CBA联赛之山东
日期:2016-05-28 18:18:5615-16赛季CBA联赛之新疆
日期:2017-04-12 22:55:4715-16赛季CBA联赛之青岛
日期:2017-06-26 18:30:0315-16赛季CBA联赛之四川
日期:2017-09-04 12:27:0315-16赛季CBA联赛之福建
日期:2018-02-09 14:28:3315-16赛季CBA联赛之同曦
日期:2018-04-17 12:43:3415-16赛季CBA联赛之浙江
日期:2018-07-14 13:27:4015-16赛季CBA联赛之吉林
日期:2018-09-13 15:48:2915-16赛季CBA联赛之新疆
日期:2016-05-07 05:05:3215-16赛季CBA联赛之八一
日期:2016-03-14 12:32:06程序设计版块每日发帖之星
日期:2015-12-12 06:20:00
18 [报告]
发表于 2017-08-21 18:49 |只看该作者
  1. source.txt
  2. 192.168.1.0/30
  3. 125.36.62.0/25
复制代码
  1. # python3
  2. import ipaddress

  3. with open("source.txt",'r',encoding='utf-8') as f,open('dest.txt','w',encoding='utf-8') as f1:
  4.     ip = [str(i)+'\n' for net in f for i in ipaddress.ip_network(net.strip('\n')).subnets(new_prefix=32)]
  5.     f1.writelines(ip)
复制代码
  1. dest.txt
  2. 192.168.1.0/32
  3. 192.168.1.1/32
  4. 192.168.1.2/32
  5. 192.168.1.3/32
  6. 125.36.62.0/32
  7. 125.36.62.1/32
  8. .......
复制代码
输入文件 source.txt
输出文件 dest.txt

论坛徽章:
39
辰龙
日期:2013-08-21 15:45:192015亚冠之广州富力
日期:2015-05-12 16:34:52亥猪
日期:2015-03-03 17:22:00申猴
日期:2015-03-03 17:21:37未羊
日期:2014-10-10 13:45:41戌狗
日期:2014-06-17 09:53:29巨蟹座
日期:2014-06-12 23:17:17双鱼座
日期:2014-06-10 12:42:44寅虎
日期:2014-06-09 12:52:172015亚冠之卡尔希纳萨夫
日期:2015-05-24 15:24:35黄金圣斗士
日期:2015-12-02 17:25:0815-16赛季CBA联赛之吉林
日期:2017-06-24 16:43:52
19 [报告]
发表于 2017-08-21 19:07 |只看该作者
回复 1# zhuxw112233
[root@elk ~]# cat ip_list.sh
#!/bin/bash
[ -f $1 ] && ip_file=$1 || { echo $1 file error;exit 1;}

ip_list () {
local ip=$1
n=($(ipcalc -bn $IP|awk -F'[=.]' '{printf $2*256^3+$3*256^2+$4*256+$5" "}'))
seq ${n[1]} ${n[0]} |awk -vOFS=. '{i=$0;print int(i/256^3),int(i%256^3/256^2),int(i%256^3%256^2/256),i%256^3%256^2%256"/32"}'
}

while read IP
do
   ip_list $IP
done < $ip_file

[root@elk ~]# cat urfile
14.17.12.160/27
192.168.2.0/28
[root@elk ~]# ./ip_list  urfile
14.17.12.160/32
14.17.12.161/32
14.17.12.162/32
14.17.12.163/32
14.17.12.164/32
14.17.12.165/32
14.17.12.166/32
14.17.12.167/32
14.17.12.168/32
14.17.12.169/32
14.17.12.170/32
14.17.12.171/32
14.17.12.172/32
14.17.12.173/32
14.17.12.174/32
14.17.12.175/32
14.17.12.176/32
14.17.12.177/32
14.17.12.178/32
14.17.12.179/32
14.17.12.180/32
14.17.12.181/32
14.17.12.182/32
14.17.12.183/32
14.17.12.184/32
14.17.12.185/32
14.17.12.186/32
14.17.12.187/32
14.17.12.188/32
14.17.12.189/32
14.17.12.190/32
14.17.12.191/32
192.168.2.0/32
192.168.2.1/32
192.168.2.2/32
192.168.2.3/32
192.168.2.4/32
192.168.2.5/32
192.168.2.6/32
192.168.2.7/32
192.168.2.8/32
192.168.2.9/32
192.168.2.10/32
192.168.2.11/32
192.168.2.12/32
192.168.2.13/32
192.168.2.14/32
192.168.2.15/32


论坛徽章:
0
20 [报告]
发表于 2017-08-21 20:43 |只看该作者
回复 16# 本友会机友会摄友会

感谢

我做下测试
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP