方法一:cut命令
#ifconfig eth0|grep 'inet addr'|cut -d ":" -f2|cut -d " " -f1192.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
'+'表示重复前面多个字符,将多个空格或者冒号合并为一个字符。