Se o uso do perl for uma opção, aqui está um pequeno script que faz o trabalho de um arquivo, ele meramente lê o arquivo de referência e de entrada, tenta substituir o padrão de referência pela string vazia. Se o tamanho for alterado, grava em arquivo. Chame-o com nomes de arquivos de referência e de entrada como argumentos de linha de comando.
#!/bin/perl
sub readfile {
my ($filename) = @_;
my $content;
open(my $fh, '<', $filename) or die "cannot open file $filename"; {
local $/;
$content = <$fh>;
}
close($fh);
return $content;
}
sub writefile {
my ($filename, $content) = @_;
open(my $fh, '>', $filename) or die "cannot open file for writing: $filename"; {
print $fh $content;
}
close($fh);
}
my $txtref = readfile($ARGV[0]);
my $txtin = readfile($ARGV[1]);
my $txtout = $txtin;
$txtout =~ s/$txtref//g;
if (length($txtin) ne length($txtout)) {
print STDOUT "changes, length ".length($txtin)." => ".length($txtout)."\n";
my $outf = $ARGV[1].".out";
writefile($outf, $txtout);
} else {
print STDOUT "no changes\n";
}
Basta inserir a chamada em um loop de shell usando find - por exemplo - para operar no conteúdo do diretório.