Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot
 
PerlMonks  

Re^4: Comparing MDB files.

by vinoth.ree (Monsignor)
on Jul 15, 2019 at 06:20 UTC ( #11102847=note: print w/replies, xml ) Need Help??


in reply to Re^3: Comparing MDB files.
in thread Comparing MDB files.

Hi haukex

I got your point. Actually I thought I was missing something in this compare function, while calculating md5 checksum. That is why I posted that function alone. Here is the full code.

use strict; use warnings; use Digest::MD5; sub compare { my $pre_version =shift; my $new_version =shift; print("previous version: $pre_version\n"); print("new version : $new_version\n"); my $pre = Digest::MD5->new; open (PRE, "$pre_version"); $pre->addfile(*PRE); close(PRE); my $pre_digest = $pre->hexdigest; #print "pre digest=$pre_digest\n"; my $new = Digest::MD5->new; open (NEW, "$new_version"); $new->addfile(*NEW); close(NEW); my $new_digest = $new->hexdigest; #print "new digest=$new_digest\n"; if ($pre_digest eq $new_digest) { print("Equal\n"); return 0; } else { print("Not Equal\n"); return 1; } } compare($oldfile_path, $newfile_path);

Update:variable name updated from $co to $new


All is well. I learn by answering your questions...

Replies are listed 'Best First'.
Re^5: Comparing MDB files.
by daxim (Curate) on Jul 15, 2019 at 07:41 UTC
    › perl -c pm-11102847.pl Global symbol "$co" requires explicit package name (did you forget to +declare "my $co"?) at pm-11102847.pl line 21.
    You're making so many mistakes because you write so much code. Less code results in less bugs.

    I would write no code at all and just use cmp from Gnu diffutils, but if you have to to do in Perl:

    use File::Compare qw(compare); my $r = compare 'filename1', 'filename2'; if ($r == 0) { print 'same'; } elsif ($r == 1) { print 'different'; } else { die "error in comparison: $!"; }
    Ö but if you have to to use non-core modules:
    use Digest::MD5 qw(md5); use File::Slurper qw(read_binary); if (md5(read_binary('filename1')) eq md5(read_binary('filename2'))) { print 'same'; } else { print 'different'; }
Re^5: Comparing MDB files.
by haukex (Bishop) on Jul 15, 2019 at 08:10 UTC

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://11102847]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others perusing the Monastery: (5)
As of 2020-09-19 03:44 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    If at first I donít succeed, I Ö










    Results (114 votes). Check out past polls.

    Notices?