0
|
1 #!/usr/bin/perl
|
|
2 use strict;
|
|
3 use warnings;
|
|
4
|
|
5 my $in = $ARGV[0];
|
|
6 my $NB_LINE_GROUP = $ARGV[1];
|
|
7 my $NB_FILE = 4;
|
|
8 my $out1 = $ARGV[2];
|
|
9 my $out2 = $ARGV[3];
|
|
10 my $out3 = $ARGV[4];
|
|
11 my $out4 = $ARGV[5];
|
|
12
|
|
13 if (!$NB_LINE_GROUP){
|
|
14 $NB_LINE_GROUP=4;
|
|
15 }
|
|
16
|
|
17 if (!$NB_FILE){
|
|
18 $NB_FILE=4;
|
|
19 }
|
|
20
|
|
21 my $file_nb = 1;
|
|
22
|
|
23 my @in;
|
|
24 my $current_aggregate;
|
|
25 open(IN, $in) or die ("Can't open $in\n");
|
|
26 while (my $line =<IN>){
|
|
27 $current_aggregate = $line;
|
|
28 my $nb_line=1;
|
|
29 if ($NB_LINE_GROUP>1){
|
|
30 while (my $add_line = <IN>){
|
|
31 $current_aggregate .= $add_line;
|
|
32 $nb_line++;
|
|
33 if ($nb_line == $NB_LINE_GROUP){
|
|
34 last;
|
|
35 }
|
|
36 }
|
|
37 }
|
|
38 push (@in,$current_aggregate);
|
|
39 }
|
|
40 close (IN);
|
|
41
|
|
42 open (OUT1,">$out1") or die ("Can't open $out1");
|
|
43 open (OUT2,">$out2") or die ("Can't open $out2");
|
|
44 open (OUT3,">$out3") or die ("Can't open $out3");
|
|
45 open (OUT4,">$out4") or die ("Can't open $out4");
|
|
46
|
|
47
|
|
48 for (my $i=0;$i<=$#in;$i++){
|
|
49 if ($i <= $#in/4){
|
|
50 print OUT1 $in[$i];
|
|
51 }
|
|
52 elsif ($i <= $#in/2){
|
|
53 print OUT2 $in[$i];
|
|
54 }
|
|
55 elsif ($i <= $#in*3/4){
|
|
56 print OUT3 $in[$i];
|
|
57 }
|
|
58 elsif ($i <= $#in){
|
|
59 print OUT4 $in[$i];
|
|
60 }
|
|
61 else {
|
|
62
|
|
63 }
|
|
64
|
|
65
|
|
66 }
|
|
67 close (OUT1);
|
|
68 close (OUT2);
|
|
69 close (OUT3);
|
|
70 close (OUT4);
|