linux过滤ip地址
一、系统版本
[root@zabbix-server tmp]# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
二、用awk过滤取出ip地址
[root@zabbix-server ~]# ifconfig enp2s0f0|awk NR==2
inet 10.0.100.208 netmask 255.255.255.0 broadcast 10.0.100.255 [root@zabbix-server tmp]# ifconfig enp2s0f0|awk -F '[ :]+' 'NR==2 {print $3}'
10.0.100.208
三、用awk过滤取出ip地址 (Centos6.6版本)
方法一:
[root@oldboy ~]# ifconfig eth0|grep 'inet addr'|awk -F ":" '{print $2}'|awk '{print $1}'
10.0.0.162
方法二:通过awk同时使用多个分隔符来实现
[root@oldboy ~]# ifconfig eth0|grep 'inet addr'|awk -F '[ :]' '{print $13}'
192.168.1.186
方法三:通过awk同时使用多个分隔符,然后通过正则匹配多个分隔符的方法来实现
[root@oldboy ~]# ifconfig eth0 |awk -F '[ :]+' 'NR==2 {print $4}'
10.0.0.185
我们来说明下这个简单易用的好办法:
提示:本题NR是行号,分隔符+号匹配,[]里一个或多个任意一个分隔符,这里就是匹配一个或多个冒号或空格。
1)awk -F 后面跟分隔符‘[空格:]+’,其中[空格:]多分隔符写法,意思是以空格或冒号做分隔,后面的"+"号是正则表达式,意思是匹配前面空格或冒号,两者之一的1个或1个以上。
2)NR==2和sed -n "2p",相当,意思都是选择第几行,例:
[root@oldboy ~]# ifconfig eth0|awk NR==2 inet addr:10.0.0.185 Bcast:10.0.0.255 Mask:255.255.255.0
3)指定awk -F '[ :]+'分隔符后,不同字符串被分隔的列依次为:
inet |
addr |
10.0.0.185 |
Bcast:10.0.0.255 Mask:255.255.255.0 |
|
第一列 |
第二列 |
第三列 |
第四列 |
后面忽略不计。 |
4)整个答案awk部分意思是,通过NR==2取出第二行,然后,通过-F '[-:]+多分隔符正则匹配,然后通过{print $4}打印出第四列 !
5)掌握了理论要去实践验证才是科学严谨的学习态度。
[root@oldboy ~]# echo ---1:----2|awk -F '[-:]+' '{print $2}' 1 [root@oldboy ~]# echo ---1:----2|awk -F '[-:]+' '{print $3}' 2 [root@oldboy ~]# echo ---1:::::2|awk -F '[-:]+' '{print $3}' 2
linux过滤ip地址的更多相关文章
- 解决redhat linux下IP地址可以ping通,域名无法ping通问题
解决redhat linux下IP地址可以ping通,域名无法ping通 在/etc/resolv.conf中添点东西 格式如下: nameserver xxx.xxx.xxx.xxx nameser ...
- linux 查看ip地址
1.先要打开linux服务器,然后在linux桌面的空白处点击右键 2.在弹出的选项里,点击[打开终端] 3.打开linux服务器的命令终端后,输入查询linux的ip地址的命令:ifconfig - ...
- Linux下ip地址查询
[时间:2016-12] [状态:Open] [关键词:linux,ip地址,ifconfig,ip addr] 0 引用 说起来比较搞笑,我在windows下知道可以使用ipconfig命令查询本机 ...
- 从ip addr add和ifconfig的区别看linux网卡ip地址的结构
今天一个老外在邮件列表上问了一个问题,就是ip addr add和ifconfig的区别,我给他进行了解答,可能因为英语不好吧,解答的很简单,因此我还是要在这里详细说明一下.其实它们之间没有什么区别, ...
- Java 获取Linux 的IP地址
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import ...
- Linux学习(一):linux更改ip地址命令_更改DNS_更改默认网关_更改子网掩码_主机名
如何使用命令来更改linux的IP .DNS .子网掩码,在虚拟机(vitrualBox)上添加一个Linux的虚拟机; 安装方法:http://pan.baidu.com/s/1sjJPhP7 安装 ...
- 我只想要Linux的IP地址
大家都知道ifconfig 可以查看centos的ip地址,但是我如果只要ip地址该怎么办呢?首先上ifconfig [root@centos ~]# ifconfig eth0 eth0 Link ...
- 问题1——之Linux虚拟机ip地址消失
原文转自 https://blog.csdn.net/keep_walk/article/details/75115926 以前一直通过ifconfig命令查看ip地址,但是今天用XShell连接自己 ...
- Linux 设置IP地址,并能连接外网
1,如果是 centos6,请修改 vi /etc/sysconfig/network-scripts/ifcfg-eth0 2,如果是 centos7,请修改 => vi /etc/sysc ...
随机推荐
- bzoj 1002 找规律(基尔霍夫矩阵)
网上说的是什么基尔霍夫矩阵,没学过这个,打个表找下规律,发现 w[i]=3*w[i-1]-w[i-2]+2; 然后写个高精直接递推就行了 //By BLADEVIL var n :longint; a ...
- algorithm ch7 QuickSort
快速排序是基于分治模式的排序,它将数组a[p,...,r]分成两个子数组a[p,...q-1],a[q+1,...,r],使得a[p,...,q-1]中每个元素都小于a[q],而且小于等于a[q+1, ...
- JavaScript设置获取和设置属性的方法
这篇文章主要介绍了JavaScript设置获取和设置属性的方法,学会使用getAttribute.setAttribute的用法,需要的朋友可以参考下 getAttribute 该方法用来获取元素 ...
- python 判断质数还是合数
while 1: s = input('请输入一个数:') s = int(s) if s == 2: print('质数') else: if s == 0 or s == 1: print('都不 ...
- cobbler部署安装
挂载光驱 # mount /dev/cdrom /mnt/ 安装cobbler所需软件 # yum install cobbler cobbler-web dhcp tftp-server pykic ...
- Java多态机制和继承中重写重载
关于Java中多态机制 http://www.cnblogs.com/chenssy/p/3372798.html 这篇博文讲的很透彻 大体意思是 多态定义: 多态就是指程序中定义的引用变量所指向的具 ...
- WN7下安装office2013编辑文档反应这么慢?
把office在高级选项里面“禁用硬件加速”给打勾就OK了. [office 2013密钥] 9MBNG-4VQ2Q-WQ2VF-X9MV2-MPXKV F2V7V-8WN76-77BPV-MKY36 ...
- cobbler的web界面
添加用户名和密码 useradd test echo "123456" | passwd --stdin test 修改认证方式为pam #vim /etc/cobbler/mod ...
- magento 调整产品详细页自定义选项或配置项的位置
默认位置如下图,感觉不美观 调整后,如下图 打开后台产品页,找到Design下的Display product options in属性,可以看到两个选项:Product Info Column和Bl ...
- 让IE6/IE7/IE8支持CSS3属性的8种方法介绍
我们都知道,IE浏览器暂不支持CSS3的一些属性.国外的工程师们,不安于此现状,他们总是尽量使用一些手段使IE浏览器也能支持CSS3属性,我觉得这些都是很有意义,很有价值的工作,可以推动整个技术领域的 ...