私が書いた perl スクリプトの 1 つから生成した 2 つのテキスト ファイルを比較したいと思います。これら 2 つのテキスト ファイルから一致した結果を出力したいと考えています。スタックオーバーフローで人々が尋ねたいくつかの回答と質問を見てみましたが、うまくいきません。これが私が試したことです。
my $file1 = "Scan1.txt";
my $file2 = "Scan2.txt";
my $OUTPUT = "final_result.txt";
my %results = ();
open FILE1, "$file1" or die "Could not open $file1 \n";
while(my $matchLine = <FILE1>)
{
$results{$matchLine} = 1;
}
close(FILE1);
open FILE2, "$file2" or die "Could not open $file2 \n";
while(my $matchLine =<FILE2>)
{
$results{$matchLine}++;
}
close(FILE2);
open (OUTPUT, ">$OUTPUT") or die "Cannot open $OUTPUT \n";
foreach my $matchLine (keys %results) {
print OUTPUT $matchLine if $results{$matchLine} ne 1;
}
close OUTPUT;
希望する出力の例
FILE1.TXT データ 1 データ 2 データ 3
FILE2.TXT データ2 データ1
OUTPUT データ 1 データ 2