Mercurial > ec-dotfiles
comparison bin/cek.pl @ 614:70355e17653e
Use zlib which is more available
author | nanaya <me@nanaya.pro> |
---|---|
date | Mon, 02 Apr 2018 17:45:56 +0900 |
parents | 1a996b35eaab |
children |
comparison
equal
deleted
inserted
replaced
613:1a996b35eaab | 614:70355e17653e |
---|---|
1 #!/usr/bin/env perl | 1 #!/usr/bin/env perl |
2 | 2 |
3 use strict; | 3 use strict; |
4 use warnings; | 4 use warnings; |
5 use String::CRC32; | 5 use Compress::Zlib; |
6 use File::Basename; | 6 use File::Basename; |
7 | 7 |
8 my @files = @ARGV or print("Usage: ",basename($0)," file1 file2 ... fileN\n") && exit(1); | 8 my @files = @ARGV or print("Usage: ",basename($0)," file1 file2 ... fileN\n") && exit(1); |
9 my $num_ok = 0; | 9 my $num_ok = 0; |
10 my $num_err = 0; | 10 my $num_err = 0; |
26 $name_crc = uc($2); | 26 $name_crc = uc($2); |
27 } | 27 } |
28 | 28 |
29 open(FILE,"<",$filename); | 29 open(FILE,"<",$filename); |
30 binmode(FILE); | 30 binmode(FILE); |
31 $real_crc = sprintf("%08X",crc32(*FILE)); | 31 my $file_crc = 0; |
32 my $file_part = ''; | |
33 while (read(FILE, $file_part, 4096)) { | |
34 $file_crc = crc32($file_part, $file_crc); | |
35 } | |
32 close(FILE); | 36 close(FILE); |
37 $real_crc = sprintf("%08X", $file_crc); | |
33 | 38 |
34 if ($name_crc) { | 39 if ($name_crc) { |
35 $num_na--; | 40 $num_na--; |
36 if($name_crc eq $real_crc) { | 41 if($name_crc eq $real_crc) { |
37 $num_ok++; | 42 $num_ok++; |