#!/usr/bin/env perl use strict; use warnings; my ($group_size, $group) = (2, 0); local $/ = "\n>"; while () { print '*** Filename: XYZ_', ++$group, "\n" unless ($. - 1) % $group_size; chop; print '>' unless $. == 1; print; } print "\n"; __DATA__ >b_comp_seq1 ACGCGGGGGAATTT >b_comp_seq_2 ACGGGCTTTCACC >b_comp_seq3 ACGCGGGGGAATTT >b_comp_seq_4 ACGGGCTTTCACC #### *** Filename: XYZ_1 >b_comp_seq1 ACGCGGGGGAATTT >b_comp_seq_2 ACGGGCTTTCACC *** Filename: XYZ_2 >b_comp_seq3 ACGCGGGGGAATTT >b_comp_seq_4 ACGGGCTTTCACC