方法1:awk使用两遍

[root@oldboy ~]# ifconfig eth0|awk 'NR==2 {print $2}'|awk -F ":" '{print $2}'
10.0.0.5

方法2:hostname命令

[root@oldboy ~]# hostname -I
10.0.0.5

方法3:cut命令

[root@oldboy ~]# ifconfig eth0|grep 'inet addr'|cut -d ":" -f2|cut -d " " -f1
10.0.0.5

方法4:sed命令

[root@oldboy ~]# ifconfig eth0|sed -n '2p'|sed 's#^.*addr:##g'|sed 's#  B.*$##g'
10.0.0.5

方法5:awk多分割符

[root@oldboy ~]# ifconfig eth0|awk "NR==2"|awk -F '[ :]' '{print $13}'
10.0.0.5

[root@oldboy ~]# ifconfig eth0|sed -n '2p'|awk -F '[ :]+' '{print $4}'
10.0.0.5

[root@oldboy ~]# ifconfig eth0 |awk -F'[ :]+' 'NR==2 {print $4}'
10.0.0.5

方法6:sed(正则)

[root@oldboy ~]# ifconfig eth0|sed -nr '2s#^.*dr:(.*) B.*$#\1#gp'
10.0.0.5

方法:7:grep-perl正则方法

[root@oldboy ~]# ifconfig eth0|grep -Po '(?<=dr:)[0-9.]+'
10.0.0.5