用linux的命令从多个文件中统计ip的个数

前提:

若干个文件如hostsAA_平台.cfg 、 hostsBB_服务.cfg  、 hostsCC_平台.cfg 、 hostsDD_服务.cfg、 hostsXX_平台.cfg,每个文件定义了很多主机数,每个主机配置定义格式如下:

define host{

       use             linux-server

       host_name       AA-平台-济南

       alias           16.198.64.4

          }


目的:统计所有的文件的不重复的ip地址

解决的命令: ls host* | xargs cat | grep -E  "[0-9] + .[0-9] +.[0-9] +.[0-9]+" | awk '{print $2}' | uniq | wc -l

注释:

1.xargs 命令适用于管道命令不能使用的情况,本例中xargs命令将前面的输出作为cat的命令行参数。

2.grep -E "[0-9] + .[0-9] +.[0-9] +.[0-9]+",查找含有ip格式的字符串

3.awk '{print $2}',只打印输出一行记录的第二个被分割的域。即  address         16.198.64.4 这行数据的 16.198.64.4




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值