码迷,mamicode.com
首页 > 系统相关 > 详细

执行命令取出linux中eth0的IP地址

时间:2016-08-29 13:11:55      阅读:333      评论:0      收藏:0      [点我收藏+]

标签:cut   ifconfig   awk   

方法一:cut命令

#ifconfig eth0|grep ‘inet addr‘|cut -d ":" -f2|cut -d " " -f1
192.168.1.11

方法二:awk命令

1.使用两遍awk命令

#ifconfig eth0 |grep ‘inet addr‘|awk -F ":" ‘{print $2}‘ |awk ‘{print $1}‘
192.168.1.11

2.使用一遍awk命令

错误写法:

# ifconfig eth0|grep ‘inet addr‘|awk -F [ :] ‘{print $13}‘
awk: :]
awk: ^ syntax error

正确写法:

#ifconfig eth0|grep ‘inet addr‘|awk -F ‘[ :]‘ ‘{print $13}‘
192.168.1.11

也可以是:

#ifconfig eth0|sed -n ‘2p‘|awk -F ‘[ :]‘ ‘{print $(NF-6)}‘

NF在awk中表示最后一行,如果看不懂NF后面减6,可以分开查看

[root@s11 lele]# ifconfig eth0|sed -n ‘2p‘
          inet addr:192.168.1.11  Bcast:192.168.1.255  Mask:255.255.255.0
[root@s11 lele]# ifconfig eth0|sed -n ‘2p‘|awk -F ‘[ :]‘ ‘{print $(NF)}‘
255.255.255.0
[root@s11 lele]# ifconfig eth0|sed -n ‘2p‘|awk -F ‘[ :]‘ ‘{print $(NF-1)}‘
Mask
[root@s11 lele]# ifconfig eth0|sed -n ‘2p‘|awk -F ‘[ :]‘ ‘{print $(NF-2)}‘

[root@s11 lele]# ifconfig eth0|sed -n ‘2p‘|awk -F ‘[ :]‘ ‘{print $(NF-3)}‘
192.168.1.255
[root@s11 lele]# ifconfig eth0|sed -n ‘2p‘|awk -F ‘[ :]‘ ‘{print $(NF-4)}‘
Bcast
[root@s11 lele]# ifconfig eth0|sed -n ‘2p‘|awk -F ‘[ :]‘ ‘{print $(NF-5)}‘

[root@s11 lele]# ifconfig eth0|sed -n ‘2p‘|awk -F ‘[ :]‘ ‘{print $(NF-6)}‘
192.168.1.11

3.awk多分隔符

#ifconfig eth0|sed -n ‘2p‘|awk -F ‘[ :]+‘ ‘{print $4}‘
192.168.1.11
#ifconfig eth0|awk -F ‘[ :]+‘ ‘NR==2 {print $4}‘
192.168.1.11

‘+‘表示重复前面多个字符,将多个空格或者冒号合并为一个字符。



执行命令取出linux中eth0的IP地址

标签:cut   ifconfig   awk   

原文地址:http://nanchunle.blog.51cto.com/9244770/1843785

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!