in reply to extracting duplicates from a list

In case you care about the different tags on each sequence:
#!/usr/bin/perl -w use strict; my %unique = ( ); while (<DATA>) { chomp; my ($tag, $sequence) = split; next unless defined $tag; if (exists $unique{$sequence}) { push @{ $unique{$sequence} }, $tag; } else { $unique{$sequence} = [ $tag ]; } } foreach (keys %unique) { print "Sequence: $_\n\tTags:\n"; foreach my $tag (@{ $unique{$_} }) { print "\t$tag\n"; } } __DATA__ >atc:AGR_pTi_39_1-45_FD cctttcaagtcatagaacaccggggcatgtacaacttggggaagg >atc:AGR_pTi_47_1-45_FD ccttacaggtcattgagcacagaggaatgttcaatttagggaaac >atc:AGR_pTi_39_1-45_F cctttcaagtcatagaacaccggggcatgtacaacttgggga +agg >atc:AGR_pTi_47_1-45_F ccttacaggtcattgagcacagaggaatgttcaatttaggga +aac >atc:AGR_pTi_39_1-45_RD cctttcaagtcatagaacaccggggcatgtacaacttggggaagg >atc:AGR_pTi_47_1-45_RD ccttacaggtcattgagcacagaggaatgttcaatttagggaaac >atc:AGR_pTi_39_1-45_R cctttcaagtcatagaacaccggggcatgtacaacttggggaagg
HTH