shell合理运用巧妙提取IP地址

来源:网络 责任编辑:栏目编辑 发表时间:2013-07-01 23:47 点击:

[root@XKWB5510 ~]# ifconfig eth0|awk -F "[ :]+" 'NR==2{print $4 "/" $NF}'
192.168.200.210/255.255.255.0

 


其实这句话的意识就是:

[ :]+  以多个空格或者多个:作为分割符

然后输出第二行的第四列和最后一列值


大家看一下这个分解就明白了

[root@XKWB5510 ~]# ifconfig eth0| awk -F"[ :]+" 'NR==2{print}'
          inet addr:192.168.200.210  Bcast:192.168.200.255  Mask:255.255.255.0


[root@XKWB5510 ~]#  awk -F"[: ]+" '{for(i=1;i<=NF;i++) print i,$i}' <<< "        inet addr:192.168.200.210  Bcast:192.168.200.255  Mask:255.255.255.0"
1
2 inet
3 addr
4 192.168.200.210
5 Bcast
6 192.168.200.255
7 Mask
8 255.255.255.0


去掉inet前面的空格之后,就成了下面这个,显然多个空格也是一个分隔符

[root@XKWB5510 ~]#  awk 'BEGIN{FS="[ :]+"}{for(i=1;i<=NF;i++) print i,$i}' <<< "inet addr:192.168.200.210  Bcast:192.168.200.255  Mask:255.255.255.0"
1 inet
2 addr
3 192.168.200.210
4 Bcast
5 192.168.200.255
6 Mask
7 255.255.255.0

 作者“ANLJF的专栏”
 

    发表评论
    请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
    用户名: 验证码:点击我更换图片
    最新评论 更多>>

    推荐热点

    • /etc/fstab 详解
    • nginx主主集群
    •  LVS-NAT和LVS-DR模式的实现详解
    •  RHCE考试之磁盘配额
    • 学习笔记:ACL详解
    •  LVM逻辑卷管理器
    • suse linux双网卡双网关配置
    •  Nginx主主负载均衡架构
    • ubuntu学习Mysql

    快速直达

    操作系统导航

    LinuxWindows虚拟机
    网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
    Copyright © 2008-2015 计算机技术学习交流网. 版权所有

    豫ICP备11007008号-1