#!/usr/bin/perl use warnings; use strict; use File::Copy; use Tie::File; my $f = 't/sample.data'; my $wf = 't/write_sample.data'; copy($f, $wf); tie my @wfh, 'Tie::File', $wf; for (@wfh){ if (/sub seven/){ $_ =~ s/seven/xxxxx/; } } untie @wfh; open my $wfh, '<', $wf or die "Can't open test written file $wf: $!"; open my $fh, '<', $f or die "Can't open original test file $f: $!"; my @wf = <$wfh>; my @f = <$fh>; for (@f){ if (! grep /$_/, @wf){ print "$_\n"; } }