ref.txt
行と 2 つのテキスト ファイル(参照) との行を比較していますlog.txt
。しかし、どちらのファイルにも無視したい任意の数の空白行があるかもしれません。どうすればこれを達成できますか?
ref.txt
one
two
three
end
log.txt
one
two
three
end
出力に不正なログ行はありません。つまり、 とlog.txt
一致しref.txt
ます。
疑似コードで達成したいこと:
while (traversing both files at same time) {
if ($l is blank line || $r is blank line) {
if ($l is blank line)
skip to next non-blank line
if ($r is blank line)
skip to next non-blank line
}
#continue with line by line comparison...
}
私の現在のコード:
use strict;
use warnings;
my $logPath = ${ARGV [0]};
my $refLogPath = ${ARGV [1]} my $r; #ref log line
my $l; #log line
open INLOG, $logPath or die $!;
open INREF, $refLogPath or die $!;
while (defined($l = <INLOG>) and defined($r = <INREF>)) {
#code for skipping blank lines?
if ($l ne $r) {
print $l, "\n"; #Output incorrect line in log file
$boolRef = 0; #false==0
}
}