如何搜索文本然后打印结果?

时间:2008-10-16 15:02:17

标签: perl search

我正在搜索“o”然后用“o”打印所有行。我必须申请任何建议/代码吗?

data.txt中:

j,o,b:
a,b,d:
o,l,e:
f,a,r:
e,x,o:

期望的输出:

j,o,b:
o,l,e:
e,x,o:

6 个答案:

答案 0 :(得分:9)

grep o data.txt

perl -ne 'print if (/o/);' <data.txt

答案 1 :(得分:4)

如果您的系统上有grep,那么命令行中的grep o data.txt应该可以解决问题。

如果做不到,你可以试试Perl:

open IN, 'data.txt';
my @l = <IN>;
close IN;
foreach my $l (@l) {
   $l =~ /o/ and print $l;
}

答案 2 :(得分:1)

grep "o" data.txt

这有帮助吗?我不知道Perl,但你可以使用上面的grep获得相同的输出。

答案 3 :(得分:1)

print if /o/;

答案 4 :(得分:0)

Perl:

while (<>) { print if /o/; }

或使用grep:

grep 'o' data.txt

答案 5 :(得分:0)

作为一个非常短的单行:

> perl -pe'$_ x=/o/' filename