>ENSCAPT00000000001.1 cdna (...) CACTCCGCCGGCAAGGCCACCAAGTATCTGAAGGATGTCACGTTAAAGAAGCAATGTGTG CCATTCCGGCGTTACAATGGTGGAGTTGGAAGGTGTGCCCAGGCCAAACAATGGGGCTGG ACCCAGGGTCGGTGGCCCAAAAAGAGTGCTGAATTTTTGCTGCAC >ENSCAPT00000000002.1 cdna (...) CAGCTGCTGAAGACGGAGCTGGGGTCCTTCTTCACCGAGTACCTGCAGAACCAGCTGCTG ACCAAAGGCATGGTGATCCTTCGGGACAAGATCCGCTTCTATGAGGGACAGAAACTGCTG GACTCGCTGGCAGAGACCTGGGACTTCTTCTTCAGCGACGTGCTGCCCACGCTGCAGGCC ATCTTCTACCC >ENSCAPT00000000004.1 cdna (...) ATGATGCTGGGAGAAGATGATGAGGAGTTCGTGGTGAAGGTGCGGGGTTTGCCTTGGTCC TGCTCGGCTGACGAGGTGCAGCGGTTCTTCTCCGACTGCAAAATTCAAAATGGTGCTCAA GGTATTTGTTTCATCTACACCAGAGAAGGCAGACCGAGTGGCGAGGCTTTTGTTGAACTT GAATCCGAAGATGAAGTCAAACTATCAAACAACGTTGAAATGGATTGGGTGTTGAAGCAT ACTGGTCCAAATAGTCCTGACACGGCCAATGATGGCTTTGTACGGCTTAGAGAACTCCCC TTTGGATGTAGCA #### #Open data file; chomp($paths[1]); my ($sfile) = $paths[1].$ARGV[0]; open my $fain,'<', $sfile or die "Unable to open $sfile\nError: $!\n"; my $length = $paths[3]; my $line = 0; my %count; while (my $fasta = <$fain>){ if ($fasta !~ m/^>/){ while ($fasta =~ /(.{$length})/g) { $count{$1}++; } } if ($fasta =~ m/^>/){ #Print ID line print "$_ $count{$_}\n" for sort keys %count; %count = (); $line++; chomp($fasta); print "$line|$fasta\n"; } } print "$_ $count{$_}\n" for sort keys %count; #### #!/usr/bin/env perl -l use strict; use warnings; { local $/ = "\n>"; while () { $_ = substr $_, 1 if $. == 1; chomp; my ($key, @seq_parts) = split /\n/; print "KEY=|$key|"; my $seq = join '', @seq_parts; print "SEQ=|$seq|"; } } __DATA__ >ENSCAPT00000000001.1 cdna (...) CACTCCGCCGGCAAGGCCACCAAGTATCTGAAGGATGTCACGTTAAAGAAGCAATGTGTG CCATTCCGGCGTTACAATGGTGGAGTTGGAAGGTGTGCCCAGGCCAAACAATGGGGCTGG ACCCAGGGTCGGTGGCCCAAAAAGAGTGCTGAATTTTTGCTGCAC >ENSCAPT00000000002.1 cdna (...) CAGCTGCTGAAGACGGAGCTGGGGTCCTTCTTCACCGAGTACCTGCAGAACCAGCTGCTG ACCAAAGGCATGGTGATCCTTCGGGACAAGATCCGCTTCTATGAGGGACAGAAACTGCTG GACTCGCTGGCAGAGACCTGGGACTTCTTCTTCAGCGACGTGCTGCCCACGCTGCAGGCC ATCTTCTACCC >ENSCAPT00000000004.1 cdna (...) ATGATGCTGGGAGAAGATGATGAGGAGTTCGTGGTGAAGGTGCGGGGTTTGCCTTGGTCC TGCTCGGCTGACGAGGTGCAGCGGTTCTTCTCCGACTGCAAAATTCAAAATGGTGCTCAA GGTATTTGTTTCATCTACACCAGAGAAGGCAGACCGAGTGGCGAGGCTTTTGTTGAACTT GAATCCGAAGATGAAGTCAAACTATCAAACAACGTTGAAATGGATTGGGTGTTGAAGCAT ACTGGTCCAAATAGTCCTGACACGGCCAATGATGGCTTTGTACGGCTTAGAGAACTCCCC TTTGGATGTAGCA #### KEY=|ENSCAPT00000000001.1 cdna (...)| SEQ=|CACTCCGCCGGCAAGGCCACCAAGTATCTGAAGGATGTCACGTTAAAGAAGCAATGTGTGCCATTCCGGCGTTACAATGGTGGAGTTGGAAGGTGTGCCCAGGCCAAACAATGGGGCTGGACCCAGGGTCGGTGGCCCAAAAAGAGTGCTGAATTTTTGCTGCAC| KEY=|ENSCAPT00000000002.1 cdna (...)| SEQ=|CAGCTGCTGAAGACGGAGCTGGGGTCCTTCTTCACCGAGTACCTGCAGAACCAGCTGCTGACCAAAGGCATGGTGATCCTTCGGGACAAGATCCGCTTCTATGAGGGACAGAAACTGCTGGACTCGCTGGCAGAGACCTGGGACTTCTTCTTCAGCGACGTGCTGCCCACGCTGCAGGCCATCTTCTACCC| KEY=|ENSCAPT00000000004.1 cdna (...)| SEQ=|ATGATGCTGGGAGAAGATGATGAGGAGTTCGTGGTGAAGGTGCGGGGTTTGCCTTGGTCCTGCTCGGCTGACGAGGTGCAGCGGTTCTTCTCCGACTGCAAAATTCAAAATGGTGCTCAAGGTATTTGTTTCATCTACACCAGAGAAGGCAGACCGAGTGGCGAGGCTTTTGTTGAACTTGAATCCGAAGATGAAGTCAAACTATCAAACAACGTTGAAATGGATTGGGTGTTGAAGCATACTGGTCCAAATAGTCCTGACACGGCCAATGATGGCTTTGTACGGCTTAGAGAACTCCCCTTTGGATGTAGCA| #### %count = ();