annotate VCFToolsSlidingWindow/VCFToolsSlidingWindow.pl @ 3:612066e3f57d draft

Uploaded
author gandres
date Mon, 09 Nov 2015 05:18:45 -0500
parents ac7c9e40d601
children b762ecbe2314
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
1
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
2 #!/usr/bin/perl
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
3
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
4 use strict;
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
5 use Getopt::Long;
3
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
6 use Bio::SeqIO;
2
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
7
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
8 my $usage = qq~Usage:$0 <args> [<opts>]
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
9
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
10 where <args> are:
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
11
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
12 -i, --input <VCF input>
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
13 -o, --out <output basename>
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
14 -s, --step <step size>
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
15 -w, --window <window size>
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
16
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
17 <opts> are:
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
18 -g, --group <group file>
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
19 ~;
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
20 $usage .= "\n";
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
21
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
22 my ($input,$out);
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
23 my $window = 200000;
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
24 my $step = 200000;
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
25 my $groupfile;
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
26 GetOptions(
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
27 "input=s" => \$input,
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
28 "out=s" => \$out,
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
29 "step=s" => \$step,
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
30 "window=s" => \$window,
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
31 "group=s" => \$groupfile
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
32 );
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
33
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
34
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
35
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
36
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
37 die $usage
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
38 if ( !$input);
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
39
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
40 my %hash;
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
41 my $cmd_part = "";
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
42 if ($groupfile && -e $groupfile)
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
43 {
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
44 open(my $G,$groupfile) or die "Cannot open $groupfile: $!";
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
45 while(<$G>)
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
46 {
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
47 my $line = $_;
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
48 chomp($line);
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
49 $line=~s/\r//g;
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
50 $line=~s/\n//g;
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
51 my @infos = split(/;/,$line);
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
52 if ($infos[0] && $infos[1])
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
53 {
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
54 $hash{$infos[1]} .= " --indv " . $infos[0];
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
55 $cmd_part .= " --indv " . $infos[0];
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
56 }
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
57 }
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
58 close($G);
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
59 }
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
60
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
61
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
62 if ($step =~/^(\d+)\s*$/){
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
63 $step = $1;
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
64 }
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
65 else{
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
66 die "Error: step size must be an integer\n";
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
67 }
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
68 if ($window =~/^(\d+)\s*$/){
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
69 $window = $1;
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
70 }
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
71 else{
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
72 die "Error: window size must be an integer\n";
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
73 }
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
74
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
75
3
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
76 my $input_format = "--vcf $input.sorted";
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
77 if ($input =~/\.vcf/){
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
78 system("vcf-sort $input >$input.sorted");
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
79 $input_format = "--vcf $input.sorted";
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
80 }
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
81 elsif ($input =~/\.bcf/){
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
82 $input_format = "--bcf $input";
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
83 }
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
84 system("vcftools $input_format --out $out --window-pi $window --window-pi-step $step >>$out.vcftools.log 2>&1");
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
85 system("vcftools $input_format --out $out --TajimaD $window >>$out.vcftools.log 2>&1");
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
86 system("vcftools $input_format --out $out --TsTv $window >>$out.vcftools.log 2>&1");
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
87 system("vcftools $input_format --out $out --SNPdensity $window >>$out.vcftools.log 2>&1");
2
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
88
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
89
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
90
3
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
91 ##################################################
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
92 # Tajima distribution
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
93 ##################################################
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
94 my %counts3;
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
95 my @values;
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
96 open(my $TAJIMA,"$out.Tajima.D");
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
97 <$TAJIMA>;
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
98 my $max = 0;
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
99 while(<$TAJIMA>){
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
100 my $line = $_;
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
101 $line =~s/\n//g;
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
102 $line =~s/\r//g;
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
103 my @inf = split(/\t/,$line);
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
104 my $val = $inf[3];
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
105 my $arrondi = sprintf("%.1f",$val);
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
106 $counts3{$arrondi}++;
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
107 }
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
108 close($TAJIMA);
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
109
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
110
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
111
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
112 open(my $M3,">$out.tajima_distrib");
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
113 print $M3 "Values nb of values\n";
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
114 for (my $i = -2.5; $i <= 2.5; $i=$i+0.1)
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
115 {
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
116 my $arrondi = sprintf("%.1f",$i);
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
117 my $nb = 0;
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
118 if ($counts3{$arrondi})
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
119 {
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
120 $nb = $counts3{$arrondi};
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
121 }
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
122 print $M3 "Tajima $arrondi $nb\n";
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
123 }
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
124 close($M3);
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
125
2
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
126
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
127 if (keys(%hash) > 0)
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
128 {
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
129 my $files_pi = "";
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
130 my $files_dtajima = "";
3
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
131 my $cmd_fst = "--fst-window-size $window";
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
132 my $cmd_fst_by_marker = "";
2
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
133 foreach my $pop(sort(keys(%hash)))
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
134 {
3
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
135 my $cmd_part = $hash{$pop};
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
136
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
137
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
138 open(my $POP,">$input.$pop.txt");
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
139 my @ind_of_pop = split(" --indv ",$cmd_part);
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
140 print $POP join("\n",@ind_of_pop);
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
141 close($POP);
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
142 $cmd_fst .= " --weir-fst-pop $input.$pop.txt";
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
143 $cmd_fst_by_marker .= " --weir-fst-pop $input.$pop.txt";
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
144
2
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
145 my $cmd_part = $hash{$pop};
3
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
146 system("vcftools $input_format --remove-filtered-all --out $out.$pop --window-pi $window --window-pi-step $step $cmd_part --maf 0.001 >>$out.vcftools.log 2>&1");
2
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
147 my $sed_cmd = "sed -i \"s\/PI\/$pop\/g\" $out.$pop.windowed.pi";
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
148 system($sed_cmd);
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
149 $files_pi .= "$out.$pop.windowed.pi ";
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
150
3
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
151 system("vcftools $input_format --remove-filtered-all --out $out.$pop --SNPdensity $window $cmd_part --maf 0.001 >>$out.vcftools.log 2>&1");
2
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
152
3
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
153 system("vcftools $input_format --remove-filtered-all --out $out.$pop --TajimaD $window $cmd_part --maf 0.001 >>$out.vcftools.log 2>&1");
2
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
154 my $sed_cmd = "sed -i \"s\/TajimaD\/$pop\/g\" $out.$pop.Tajima.D";
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
155 system($sed_cmd);
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
156 $sed_cmd = "sed -i \"s/nan/0/g\" $out.Tajima.D";
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
157 system($sed_cmd);
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
158 $files_dtajima .= "$out.$pop.Tajima.D ";
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
159
3
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
160 system("vcftools $input_format --remove-filtered-all --out $out.$pop --TsTv $window $cmd_part --maf 0.001 >>$out.vcftools.log 2>&1");
2
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
161 }
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
162 system("paste $files_pi >>$out.combined.pi");
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
163 my $awk_cmd = "awk {'print \$1\"\t\"\$2\"\t\"\$5\"\t\"\$10'} $out.combined.pi >$out.combined.pi.txt";
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
164 system($awk_cmd);
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
165
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
166 system("paste $files_dtajima >>$out.combined.dtajima");
3
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
167 $awk_cmd = "awk {'print \$1\"\t\"\$2\"\t\"\$4\"\t\"\$8'} $out.combined.dtajima >$out.combined.dtajima.txt";
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
168 system($awk_cmd);
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
169
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
170 system("vcftools $input_format --remove-filtered-all --out $out.fst $cmd_fst --maf 0.001 >>$out.vcftools.log 2>&1");
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
171 $awk_cmd = "awk {'print \$1\"\t\"\$2\"\t\"\$5'} $out.fst.windowed.weir.fst >$out.fst.txt";
2
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
172 system($awk_cmd);
3
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
173
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
174 system("vcftools $input_format --remove-filtered-all --out $out.fst $cmd_fst_by_marker --maf 0.001 >>$out.vcftools.log 2>&1");
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
175
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
176 my %genes;
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
177 open(my $V,$input);
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
178 my $go = 0;
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
179 while(<$V>){
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
180 if ($go){
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
181 my @infos = split(/\t/,$_);
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
182 my $chr = $infos[0];
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
183 my $pos = $infos[1];
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
184 my $annot = $infos[7];
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
185 my $gene = "#";
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
186 if ($annot =~/EFF=\w+\((.*)\)/){
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
187 my @parts = split(/\|/,$1);
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
188 $gene = $parts[4];
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
189 }
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
190 $genes{"$chr:$pos"} = $gene;
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
191 }
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
192 if (/^#CHROM/){$go = 1;}
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
193 }
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
194
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
195 my $cumul = 0;
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
196 my $previous_pos;
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
197 my %chrs;
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
198 open(my $F,"$out.fst.weir.fst");
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
199 open(my $O,">$out.fst.by_marker.txt");
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
200 open(my $O2,">$out.fst.by_marker.genes.txt");
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
201 print $O "Chromosome Marker Position Fst\n";
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
202 print $O2 "Chromosome Marker Position Fst Gene\n";
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
203 while(<$F>){
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
204 my $line = $_;
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
205 chomp($line);
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
206 my ($chr,$pos,$val) = split(/\t/,$line);
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
207 if (!$chrs{$chr}){
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
208 $cumul = $previous_pos;
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
209 $chrs{$chr} = 1;
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
210 }
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
211 if ($val > 0.6 && $val !~/-/ && $val ne 'nan'){
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
212 my $x = $pos+$cumul;
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
213 print $O2 "$chr $chr:$pos $pos $val " . $genes{"$chr:$pos"} . "\n";
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
214 print $O "$chr $chr:$pos $x $val\n";
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
215 $previous_pos = $x;
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
216 }
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
217
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
218 }
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
219 close($F);
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
220 close($O);
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
221 close($O2);
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
222
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
223 #$awk_cmd = "awk {'if (\$3>0.6 && \$3<=1 && \$3!~\"nan\"){print \$1\"\t\"\$2\"\t\"\$2\"\t\"\$3}'} $out.fst.weir.fst >$out.fst.by_marker.txt";
612066e3f57d Uploaded
gandres
parents: 2
diff changeset
224 #system($awk_cmd);
2
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
225 }
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
226
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
227
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
228
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
229
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
230
ac7c9e40d601 Uploaded
gandres
parents:
diff changeset
231