请教一个很小的问题,大哥帮忙下,谢谢!

请教一个很小的问题,大哥帮忙下,谢谢!

我在我的perl脚本里面执行:
my $ping_addr2 =`cat /var/run/dhclient.eth1.leases |grep routers | tail -n 1
得到的结果是  ping_addr2 = option routers 192.168.10.1;
我现在只想得到里面的ip值192.168.10.1请问我接下来的应该怎么写?
我发现我使用awk '{print $3}' 这样的语句没有用,呵呵!不好意思 !请大哥帮忙写一个!非常感谢!


QUOTE:
kernel@fairland:~$ perl -le '$ping = "option routers 192.168.10.1"; print  +(split /\s+/,$ping)[-1];'
192.168.10.1

see
用正则表达式匹配数字串,正则表达式是PERL的精华之一,你自己好好看看任何一本PERL书籍吧。
楼上用split也可,简单直接。

谢谢!但是还有一个分号,ping_addr2 = option routers 192.168.10.1;
注意192.168.10.1的后面还有一个分号,感谢了 !
churchmice
的答案已经处理分号了。
你提取出来之后用substr或者regex去掉末尾的分号不就行了