作者brainer (大脑人)
看板Perl
标题[问题] 搜寻问题
时间Mon Aug 23 20:07:52 2010
请教一个问题,假设我有一档案 (file.txt)
内容是
==
192.168.16.1 asdsvfbvdfv
192.168.16.123 jibmhgfibg
==
我用 `cat ./file.txt | grep "192.168.16.1"`;
会得到两笔资料,请教一下有什麽快速方法是可以只取得第一笔资料的吗 !?
如果不要把整个档案读入後在 parse ........
谢谢 !!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 203.66.245.201
1F:→ cobain:grep "192.168.16.1" -m1 08/23 22:34
2F:→ cobain:怎麽会来perl版问这个问题? 08/23 22:34
3F:推 abliou:因为他在perl中用了反向引号对系统下命令 08/23 23:41
4F:→ Seshon:要不要试看看egrep取代grep 08/24 22:09
5F:→ cobain:理解 也可以这样 my ($line) = `cat ... | grep "..."`; 08/25 10:32
6F:推 CindyLinz:grep 这样用: grep '192.168.16.1\>' 08/25 11:27
7F:→ LHKLSW:grep 加 -w 参数试试 08/25 23:32
8F:推 chiunyao:楼上方法可行 抓word就好了 08/26 12:17
9F:→ brainer:-w, 可以了。谢谢楼上大家 ^^ 12/18 17:11