Подскажите плиз...Как правильно написать такой скрипт?
Даем скрипту папку с тхт файлами он поочередно переименовывает их по порядку 1,2,3,4,5 и тд
Массовое переименование тхт файлов
#!/bin/perl -w
# refill.pl -dir= -start=
use strict;
use Cwd;
my $dir = cwd();
my $start = 10;
my $step = 10;
foreach(@ARGV){
if($_ =~ /^[-\/](.+?)=(.+?)$/){
if($1 eq 'dir'){ $dir = $2; }
elsif($1 eq 'start'){ $start = $2; }
}
}
opendir DR,$dir or die "Unable to open directory!\n";
my $file;
my @files = ();
while($file = readdir(DR)){
if(-f $file && $file ne 'refill.pl'){ push @files,$file; }
}
closedir DR;
my @sortfiles = sort {$b cmp $a} @files;
my $ci = $#sortfiles*$step + $start;
for(my $i=0; $i < scalar(@sortfiles); $i++){
my $nname = sprintf('%05d',$ci);
$ci -= $step;
my $cname = $sortfiles[$i];
$cname =~ s/(.+)\.(.+?)$/$nname.$2/i;
rename $dir.'/'.$sortfiles[$i],$dir.'/'.$cname;
}
# refill.pl -dir= -start=
use strict;
use Cwd;
my $dir = cwd();
my $start = 10;
my $step = 10;
foreach(@ARGV){
if($_ =~ /^[-\/](.+?)=(.+?)$/){
if($1 eq 'dir'){ $dir = $2; }
elsif($1 eq 'start'){ $start = $2; }
}
}
opendir DR,$dir or die "Unable to open directory!\n";
my $file;
my @files = ();
while($file = readdir(DR)){
if(-f $file && $file ne 'refill.pl'){ push @files,$file; }
}
closedir DR;
my @sortfiles = sort {$b cmp $a} @files;
my $ci = $#sortfiles*$step + $start;
for(my $i=0; $i < scalar(@sortfiles); $i++){
my $nname = sprintf('%05d',$ci);
$ci -= $step;
my $cname = $sortfiles[$i];
$cname =~ s/(.+)\.(.+?)$/$nname.$2/i;
rename $dir.'/'.$sortfiles[$i],$dir.'/'.$cname;
}