#! perl -slw use strict; use List::Util qw[ shuffle ]; $/ = '>'; open FASTA, '<:raw', $ARGV[0] or die $!; my @seqPosns; push @seqPosns, tell( FASTA ) while ; @seqPosns = shuffle @seqPosns; for ( @seqPosns[ 0 .. $ARGV[ 1 ] // 10 ] ) { seek FASTA, $_, 0; my $seq = ; chomp( $seq ); chop( $seq ); print '>', $seq; } close FASTA; __END__ C:\test>988096.pl C:/dell/test/LCS/bioMan.fasta 2 >af418682 TTCCACAACTTTCCACCAAGCTCTACAAGATCCCAGAGTCAGGGGCCTGTATTTTCC TGGGTCTTTTGGGCTTTGCCGCTCCATTTACACAATGTGGTTATCCTGCATTAATGC ACTTCTTTCCTTCAGTACGAGATCTCCTAGATACCGCCTCAGCTCTATATCGGGAAG TCAAACAATCCAGATTGGGACTTCAACCCCATCAAGGACCACTGGCCACAAGCCAAC >ab033557 CTCCACGACATTCCACCAAGCTCTGCTAGATCCCAGAGTGAGGGGCCTTTACTTTCC TGGGTCTTTTGGGCTTTGCTGCCCCTTTTACACAATGTGGCTATCCTGCCTTAATGC ACTTCTTTCCTTCCATTCGAGATCTTCTCGACACCGCCTCTGCTCTGTATCGGGAGG TCAAACAATCCAGATTGGGACTTCAACCCCAACAAGGATCAATGGCCAGAAGCAAAT >x97850 CTCCACAACTTTCCTCCAAACTCTTCAAGATTCCAGAGTCAGGGCCCTGTACCTTCC TGGGTCTTTTGGGGTTTGCCGCCCCTTTCACGCAATGTGGATATCCTGCTTTAATGC ACTTTTTTCCTTCTATTCGAGATCTCCTCGACACCGCCTCTGCTCTGTATCGGGAGG TCAGAAAATCCAGATTGGGACCTCAACCCGCACAAGGACAACTGGCCGGACGCCAAC