一同事的朋友正在參加筆試,遇到這麼一個問題讓他幫忙解決,結果同事又找到我幫他搞定。真是感慨:通信發達在某些方面來講,真不知是否是好事啊!題目大體以下所示,通常咱們使用ifconfig查看網卡信息,請問你能夠經過什麼命令,讓其只輸出IP地址192.168.42.128html
看似簡單的問題,實現起來也不是太簡單。看看下面的思路吧ide
[root@DB-Server ~]# ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:0C:29:9E:70:0E
inet addr:192.168.42.128 Bcast:192.168.42.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe9e:700e/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:135 errors:0 dropped:0 overruns:0 frame:0
TX packets:216 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:14062 (13.7 KiB) TX bytes:26007 (25.3 KiB)
[root@DB-Server ~]# ifconfig eth0 | grep "inet addr"
inet addr:192.168.42.128 Bcast:192.168.42.255 Mask:255.255.255.0
到這一步很是簡單,接下來就須要藉助awk來實現了,以下所示,到此問題解決。post
[root@DB-Server ~]# ifconfig eth0 | grep "inet addr" | awk '{ print $2}'
addr:192.168.42.128
[root@DB-Server ~]# ifconfig eth0 | grep "inet addr" | awk '{ print $2}' | awk -F: '{print $2}'
192.168.42.128
做者:瀟湘隱者url