1

perlでキーワードを使用して大きなファイルを検索し、キーワードが表示されるすべての行をそれぞれ新しい行に出力しようとしています。

4

1 に答える 1

4

keyword以下は、 toを含むすべての行を出力しoutputFile.txtます。入力ファイルは、引数としてスクリプトに渡されます。

findkeyword.pl

#!/usr/bin/perl
use strict;
use warnings;

open OUTPUT, ">outputFile.txt"; 
while (my $line = <>) {
     if($line =~ m/keyword/){
     print OUTPUT $line;
     }
}

入力:

./findkeyword.pl inputfile1 inputfile2 ...

編集:コメントで@Kenosisが言ったように、

のようなファイルハンドルとしてレキシカルスコープの $fh を使用する方が良いかもしれませんopen(my $fh, ">", "outputFile.txt")参照:open()

キーワードを変数に格納している場合は、quotemeta最初にそれを呼び出すか、\Q...\E.

于 2012-11-15T11:12:34.810 に答える