|
md5.pl |
if (@ARGV == 0) { process(\*STDIN); } else { foreach my $file (@ARGV) { my $in = new IO::File $file; die "$cmdname: unable to open $file: $!\n" unless defined $in; process($in, (@ARGV > 1? $file: undef)); $in->close; } } sub process { my ($in, $filename) = @_; my $context = &{$digests{$cmdname}}(); $context->addfile($in); print $filename, ": " if defined $filename; my $hex = $context->hexdigest; $hex =~ tr/a-f/A-F/; print $hex, "\n"; } |
\*STDIN ist ein Zeiger auf einen Type-Glob und
die einzige Methode, STDIN als Parameter zu übergeben.
| |
Die Syntax des tr-Operators lehnt sich an
dem s-Operator an. Die Arbeitsweise entspricht dem
tr-Kommando, d.h. die Zeichen aus der geordneten ersten
Menge werden durch die entsprechenden Zeichen der zweiten
Menge ersetzt.
|
Copyright © 1996, 1998, 1999, 2000 Andreas Borchert, in HTML konvertiert am 07.02.2000 |