http://www.perlmonks.org?node_id=1038800


in reply to put every sequence of a file in a different output file

Hi bingalee,
I strongly guess you want to save each of the "sequence" starting from XLOC_.. till the space line.
If so,
the following can give you a head up: It saves each "sequence", into a different named file. (am using only the OP data here .... Please)

use warnings; use strict; my $fh; while (<DATA>) { chomp; if (/(XLOC_\d+$)/) { open $fh, '>', "$1.txt" or die $!; print $fh $_, $/; } else { print $fh $_, $/; } } __DATA__ XLOC_000039 >chr1:983051-985037 CATGACTTTGTCGGAATTATGTTACTGCTCATTATCAATTCCACCATTAGCTTCATAGAG GAAAACAATGCCGGGAATGCTGCTGCTGCGCTTATGGCCCGCCTCGCACCAAAATCCAAG GTAAGCCCCACACCCTACTTACCACTCCTTTTTCTTCTCAATACTGCTTTTCATCATGTT ACACTCATTTTCTAGGTTTTACGTGATGGAACCTGGAGTGAAATGGACGCATCTTTGTTG GTGCCCGGTGACATAATCAGCATTAAACTTGGAGACATCATTCCGGCAGATGCGCGTCTT CTCGAGGGAGATCCGCTGAAAATTGACCAGGTCTTTCTTGTGTCTCAATCATAGTGTTCT TGGTAGAGCGGAAAAAAAAATATTCTGATATGAAAATTACATGAGACACTAAAACACATA XLOC_000456 >chr1:12600284-12601781 CAACAATCTCTGATGATGCGGCAGGGCCTTGCTCGCGGGGCGTGGTGCTACCTCGAGGAT GAGTTCCTTGGCCAAAGGGAATCCCGGGCGCTTCTACTTGAGACAAAATTCCGCAACTTC CGCCAAGAGTCCTTGAGCATCACTGACTACTGCCGCCAGCTTGAGTCAATGGCGGCATCC CTTGCCGGTTTCGGCGATCCCATCGGCGATAGGCAGATGGTGCTCACGCTCCTTCGTGGC CTCGGCGGCAAGTTCCGTCACATGGTGTCCATCCTCAAGATGCACCAGCCGTTCCCCACG TTCGCAGAGGCTCGTGCGCACCTGCTGTTGGAGGAGCTGGAAATCGACGCACGACCTCCA TCACCGCCATCGGCACTTGTTGCTGCAGCGCCGCGGCATGCGACTCCGGGGGCCCCAGTA
The above is how far I can make of your question.
I'm sorry, if I get you wrong.
Please pay close attention to the comments before this.

If you tell me, I'll forget.
If you show me, I'll remember.
if you involve me, I'll understand.
--- Author unknown to me