我正在将目录的文件读入数组。从那里,我想从数组中计算每个文件的 md5sum 并将带有文件名的指纹存储到另一个数组中。出于某种原因,使用以下代码,我的脚本似乎一直在覆盖我的第二个数组 (@md5) 中的相同索引,而不是将每个 md5sum 存储到单独的索引中。我的代码有什么问题?输出在这篇文章的底部。
#!/usr/bin/perl -w
@files = <*>;
foreach $file (@files) {
print $file . "\n";
}
foreach $file (@files) {
@md5 = `md5sum $file`;
$x++;
}
foreach $entry (@md5) {
print $entry . "\n";
}
输出
./mymd5.pl
ddiff.pl
mymd5.pl
mymd5.pl.save
mymd5.pl.save.1
plgrep.pl
d41d8cd98f00b204e9800998ecf8427e plgrep.pl