#!/usr/bin/perl use strict; #use warnings; #use diagnostics; my $file = "test.txt"; my $out1 = "chr1.gens"; my $out2 = "chr2.gens"; my $out3 = "chr3.gens"; open(IN,'<'.$file) || die "Can not open file $file: $!"; open OUT1, "> $out1" or die "Can't open $out1 : $!"; open OUT2, "> $out2" or die "Can't open $out2 : $!"; open OUT3, "> $out3" or die "Can't open $out3 : $!"; while(){ if ($_ =~ m/^0/){ print OUT1 "$_\n"; } elsif ($_ =~ m/^1/){ print OUT2 "$_\n"; } elsif ($_ =~ m/^2/){ print OUT3 "$_\n"; } } close IN; close OUT1; close OUT2; close OUT3;