{{category Perl}} 標準モジュールのDigest::MD5。 引数がファイルなら、そのファイルのMD5値を計算し、ファイルでないなら、その引数文字列のMD5値を計算する。 #! /usr/bin/perl use strict; use Digest::MD5; my $md5; my $type; my $result; $md5 = Digest::MD5->new(); for my $arg (@ARGV) { if (-f $arg) { open(OP, $arg) or die "file open failed: $arg\n"; binmode(OP); $md5->addfile(*OP); close(OP); $type = "FILE"; } else { $md5->add($arg); $type = "DATA"; } print "$type: $arg: " . uc($md5->hexdigest) . "\n"; }