我們不妨看看 ifconfig ppp0 這個命令的輸出結果﹕
# ifconfig ppp0
ppp0 Link encap:Point-to-Point Protocol
inet addr:211.74.48.254 P-t-P:211.74.48.1 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1492 Metric:1
RX packets:5 errors:0 dropped:0 overruns:0 frame:0
TX packets:3 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
不難發現 IP 位址所在的句子中有著其它句子所沒有的字眼﹕inet addr 。然後﹐我們就可用 grep 把這行抓出來﹕
# ifconfig ppp0 | grep "inet addr"
inet addr:211.74.48.254 P-t-P:211.74.48.1 Mask:255.255.255.255
再來﹐我們先用相同的分隔符號將句子分成數列﹐然後抓出 IP 位址所在的那列。
嗯﹐這裡﹐我們可以用“ : ”來分出 3 列﹔也可以用空白鍵來分出 5 列(空因為句子開首就是一個空白鍵)。如果用空白鍵來分的話﹐由於有些間隔有多個空白鍵的原因﹐那麼﹐我們可以用 tr 命令﹐將多個空白鍵集合成一個空白鍵﹕
# ifconfig ppp0 | grep "inet addr" | tr -s ' ' ' '
inet addr:211.74.48.254 P-t-P:211.74.48.1 Mask:255.255.255.255
(注意﹕在 ' ' 之間是一個空白鍵﹗)
然後用 cut 命令抓出 IP 所在的列﹐細心數一數﹐應該是第 3 列﹕
# ifconfig ppp0 | grep "inet addr" | tr -s ' ' ' ' | cut -d ' ' -f3
addr:211.74.48.254
然後我們用“ : ”再分兩列﹐抓第 2 列就是 IP 了﹕
# ifconfig ppp0 | grep "inet addr" | tr -s ' ' ' ' \
| cut -d ' ' -f3 | cut -d ':' -f2
211.74.48.254
歡迎光臨 ADJ網路實驗室 (http://dz.adj.idv.tw/) | Powered by Discuz! 6.0.0 |