use strict; use warnings; my $dir=shift || die "Directory where the chunks are stored\n"; my $out=shift || die "Name under which we join the chunks\n"; my @files; my $buffer; opendir(D,$dir) || die "OPENDIR : $!\n"; @files=grep { /^\d+$/ } readdir(D); closedir(D); chdir($dir) || die "CHDIR : $!\n"; open(F,">../$out") || die "CREATE : $!\n"; binmode(F); @files=sort { $a <=> $b } @files; for(@files) { open(C,$_) || die "OPEN : $!\n"; binmode(C); while(read(C,$buffer,4096)) { print F $buffer; } print "I joined chunk nr. $_\n"; close C; } print "File $out is complete now\n"; close F;