#!/usr/bin/perl -w use warnings ; ($if) = @ARGV ; if (scalar @ARGV != 1) { print "ProgName [Input File] \n" ; exit ; } open(fh1,"$if") ; @fd1 = ; close(fh1) ; $i = -1 ; $j = 0 ; foreach $l (@fd1) { $i++ ; if ($l =~ /^>/) { $j++ ; $fn = "$j".".inp" ; write_seq_c($i,$fn) ; } } exit ; sub write_seq_c { ($p,$fn1) = @_ ; open (fh2 , ">$fn1") ; print fh2 $fd1[$p] ; for ( $k = $p + 1 ; $k < $p + 100000000 ; $k++) { if ($k >= (scalar @fd1)) { last ; } if ($fd1[$k] eq "") {last ; } if ($fd1[$k] =~ />/) { last ; } print fh2 $fd1[$k] ; } close(fh2) ; }