如何在while循环中搜索特定的jar文件?在下面的代码中,$application
,$location
,$version
是命令行参数
sub do_verify
{
while($application eq 'abc')
{
my $dir = "/viewstore/ccabc/dst_${application}_${version}/abcportal/${location}/target";
opendir(DIR, $dir) or die $!;
my $jarfile;
next unless ($jarfile =~ /\.jar$/);
print "$jarfile\n";
do_upload();
}
}
答案 0 :(得分:0)
以下代码应该适合您。目前,您没有迭代指定目录中的文件。
sub do_verify {
while($application eq 'abc') {
my $dir = "/viewstore/ccabc/dst_${application}_${version}/abcportal/${location}/target";
opendir(DIR, $dir) or die $!;
my @jarfiles = grep { (/\.jar$/) && -f "$dir/$_" } readdir(DIR);
foreach (@jarfiles) {
my $jarfile = $_;
print "$jarfile\n";
do_upload();
}
}
}