SS line a
line a
line a
line a
SS line b
line b
line b
line b
line b
line b
SS line c
line c
line c
...
####
file 1
SS line a
line a
file 2
line a
line a
####
open (FILE);
my $data = 0;
my $partnumber = 5; # changes constantly
while(){$data++ if ($_ =~ /^SS/)} # to get the number of objects in a file
close FILE;
my $chunk =($data + $partnumber)/$partnumber ; # to ensure ther are no remainders
my $index = 1;
open(FILE$index);
open (FILE);
my $i = 0;
while(){
if (m/^SS/){
$i++;
if ($i >= $chunk){
$i = 0;
close FILE$index;
$index++;
open (FILE$index);
}
}
print FILE$index "$_";
}
close FILE & FILE$index;
####
open (FILE);
my $data = 0;
my $partnumber = 5; # changes constantly
while(){$data++ if ($_ =~ /^SS/)} # to get the number of objects in a file
close FILE;
my $chunk = $data/$partnumber;
my $remainder = $data%$partnumber ;
my $index = 1;
open(FILE$index);
open (FILE);
my $i = 0;
my $remain = 1;
while(){
if (m/^SS/){
$i++;
$chunk +=1 if ( $remain < $remainder);
if ($i >= $chunk){
$i = 0;
$remain++;
close FILE$index;
$index++;
open (FILE$index);
}
}
print FILE$index "$_";
}
close FILE & FILE$index;
####
chunk = (total + # of chunks)/ # of chunks
and
remainder = total % # of chunks
chunk = total / # of chunk
foreach (chunk #){
if (remainder < # of chunks){
add one to ensure that all data is divided between files
}
}