vineetha has asked for the wisdom of the Perl Monks concerning the following question:

I have two files. One file contains blast result of contigs and the next file contains the contigs that are used for blast.

I want an output text file of sequences in a separate folder which gives no hits in blast result from original fasta file with all contigs.

I have no idea about this. Can you please help me to create perl script for this problem.

Replies are listed 'Best First'.
Re: how to create output file using perl
by Discipulus (Canon) on Jul 01, 2015 at 07:28 UTC
    welcome to the monastery vineetha,

    more effort you put asking best chances you have to get back a good answer.
    You assume (and you are wrong) that every monk will understand your post and the solution is clear for people knowing Perl.
    If you think that me or other go on the web to learn what blast, contigs and sequences are just to compose a reply to your question, you are too much optimistic..

    Anyway if you can produce some small example, or even better, if you can reduce your problem to something widely understandable, chances are that you'll receive good replies.

    if you have some Perl knoweledge the basic structure of your program will be something like:
    ##PSEUDOCODE read from file A read from file B process data write output to file C


    L*
    There are no rules, there are no thumbs..
    Reinvent the wheel, then learn The Wheel; may be one day you reinvent one of THE WHEELS.
      BLAST RESULT FILE BLASTN 2.2.31+ Reference: Zheng Zhang, Scott Schwartz, Lukas Wagner, and Webb Miller (2000), "A greedy algorithm for aligning DNA sequences", J Comput Biol 2000; 7(1-2):203-14. Database: Arabidopsis_thaliana.mRNA.EST.fasta 1,529,700 sequences; 400,627,814 total letters Query= Contig1 Length=941 +Score E Sequences producing significant alignments: ( +Bits) Value gi|61656031|gb|DN604734.1|DN604734 EST JCAt1g22640 Arabidopsis ... +219 4e-055 > gi|61656031|gb|DN604734.1|DN604734 EST JCAt1g22640 Arabidopsis Gateway cDNA Library Arabidopsis thaliana cDNA 3', mRNA sequence. Length=740 Score = 219 bits (118), Expect = 4e-055 Identities = 263/334 (79%), Gaps = 6/334 (2%) Strand=Plus/Minus Query 60 AAAGGAGCTTGGACTAAAGAAGAAGATGAACGACTTATTTCTTATAT--TAAAACTCA +CG 117 ||||||||||||||||||||||||||| | | ||| || ||| || ||| || +|| Sbjct 734 AAAGGAGCTTGGACTAAAGAAGAAGATCAGCTTCTTGTTGATTACATCCGTAAA--CA +CG 677 Query 118 GCGAAGGTTGCTGGAGATCCCTTCCTAAAGCTGCCGGACTTCTCCGATGCGGTAAAAG +TT 177 | |||||||||||| |||| || ||| || || ||| | | |||| ||||| || +|| Sbjct 676 GTGAAGGTTGCTGGCGATCTCTCCCTCGCGCCGCTGGATTACAAAGATGTGGTAAGAG +TT 617 Query 178 GCCGTCTCCGATGGATTAATTACTTGAGACCGGACCTTAAACGCGGTAATTTTACTGA +AG 237 | | | ||||||| ||||| | ||||| || || ||| | || ||||||||||| +|| Sbjct 616 GTAGATTGAGATGGATGAATTATCTAAGACCAGATCTCAAAAGAGGCAATTTTACTGA +AG 557 Query 238 AAGAAGATGAACTCATTATCAAACTCCATAGCCTCCTTGGTAACAAATGGTCACTTAT +AG 297 |||||||||||||||| ||||| ||||||||| | || |||||||||||||| | || +|| Sbjct 556 AAGAAGATGAACTCATCATCAAGCTCCATAGCTTGCTCGGTAACAAATGGTCTTTAAT +AG 497 Query 298 CCGGAAGATTACCAGGAAGAACAGATAATGAGATAAAAAATTACTGGAATACGCACAT +-A 356 | || ||||||||||||||||||||||| ||||| || || || ||||| || || || + | Sbjct 496 CTGGGAGATTACCAGGAAGAACAGATAACGAGATCAAGAACTATTGGAACACTCATAT +CA 437 Query 357 AGAAGGAAGCTTTTGAGTCGGGGCATTGATCCAA 390 || ||||||||| | || || || |||||||||| Sbjct 436 AG-AGGAAGCTTCTCAGCCGTGGGATTGATCCAA 404 Lambda K H 1.33 0.621 1.12 Gapped Lambda K H 1.28 0.460 0.850 Effective search space used: 326667943382 Query= Contig2 Length=1009 ***** No hits found ***** Lambda K H 1.33 0.621 1.12 Gapped Lambda K H 1.28 0.460 0.850 Effective search space used: 350998085934 Query= Contig3 Length=529 ***** No hits found ***** Lambda K H 1.33 0.621 1.12 Gapped Lambda K H 1.28 0.460 0.850 Effective search space used: 180381608828 Query= Contig4 Length=896 +Score E Sequences producing significant alignments: ( +Bits) Value gi|152034016|gb|AU239642.2|AU239642 EST AU239642 RAFL21 Arabido... +167 1e-039 > gi|152034016|gb|AU239642.2|AU239642 EST AU239642 RAFL21 Arabidopsis thaliana cDNA clone RAFL21-11-C04 5', mRNA sequence. Length=632 Score = 167 bits (90), Expect = 1e-039 Identities = 260/345 (75%), Gaps = 2/345 (1%) Strand=Plus/Plus Query 232 ATTGCCAATACTAAGTCTTGGTTCCAATTCTATGGCGACGGCTTTTCTATTCGTGTTC +CA 291 ||||| || ||||||||||||||||| | || ||| || || ||||| | |||| +| Sbjct 286 ATTGCGAACACTAAGTCTTGGTTCCAGTACTTTGGTAGTGGGTTCGCTATTAGGGTTC +CT 345 Query 292 CCGGAATTTCAGGACCTCACTGAGCCGGAGGATTATAATGCTGGCCTATCACTATATG +GA 351 || || ||| | ||| ||| |||||| |||||||| ||| || | || || |||| +| Sbjct 346 CCTGACTTTGAAGACGTCAATGAGCCTGAGGATTACTCTGCGGGATTGTCTCTCTATG +GT 405 Query 352 GATAAGGCTAAGCCCAAAAAATTT-GCAGCACGTTTTGCTTCTTCTGATGGATCCGAA +GT 410 || ||||| ||||| | ||| ||| || || || || || |||||||||| ||| +|| Sbjct 406 GACAAGGCAAAGCC-ACAAACTTTCGCCGCCCGGTTCCAAACTCCTGATGGATCAGAA +GT 464 Query 411 TTTAAGTGTCATAATTCGTCCATCCAATCAGCTGAAGATCACTTTCTTAGAGGCTAAA +GA 470 ||| ||||| | |||||||| || ||||| || |||||||||||||||||||||||| +|| Sbjct 465 TTTGAGTGTAGTCATTCGTCCTTCAAATCAACTTAAGATCACTTTCTTAGAGGCTAAA +GA 524 Query 471 TATTACTGATTTAGGTTCACTTAAGGAGGCAGCAAAAATATTTGTTCCAGCTGGCTCA +AC 530 ||| ||||||| || ||| | |||| || |||| | | |||||||||| || || +|| Sbjct 525 TATATCTGATTTGGGATCATTGAAGGCAGCTGCAAGACTTTTTGTTCCAGGTGCNGCA +AC 584 Query 531 ACTATATTCTGTCCGCACAATAAAAATTAAAGAAGATGAGGGTTT 575 | | || |||| || ||||| || | || ||||| || ||||| Sbjct 585 AATTTACTCTGCTCGTACAATCAAGGTAAAGGAAGAAGAAGGTTT 629 Lambda K H 1.33 0.621 1.12 Gapped Lambda K H 1.28 0.460 0.850 Effective search space used: 310567113752
      CONTIG FILE >Contig1 GAGCTAAATAATTTGAATCAATGGGAAGATCACCGTGTTGTGAAAAAGCACATACAAATAAAGGAGCTTG +GACTAAAGAAGAAGATGAACGACTTATTTCTTATATTAAAACTCACGGCGAAGGTTGCTGGAGATCCCT +TCCTAAAGCTGCCGGACTTCTCCGATGCGGTAAAAGTTGCCGTCTCCGATGGATTAATTACTTGAGACC +GGACCTTAAACGCGGTAATTTTACTGAAGAAGAAGATGAACTCATTATCAAACTCCATAGCCTCCTTGG +TAACAAATGGTCACTTATAGCCGGAAGATTACCAGGAAGAACAGATAATGAGATAAAAAATTACTGGAA +TACGCACATAAGAAGGAAGCTTTTGAGTCGGGGCATTGATCCAACGACACACAGGCCTGTTAACGAGCC +TGGTACAACGCAAAAAGTCACAACAATTTCATTTGCAGGTGGAGATCATAAAACTAAAGATATTGAAGA +AGATCATAATAAGATGATAAATGTCAAAGCTGAATCTGGGTTGAGTCAATTAGAAGATGAAATTATTAG +TAGCAGTCCATTTCGAGAACAGTGTCCTGATTTAAATCTTGAGCTCAAATTAGCCCTCCTTCTCTACAA +AATTACCAACATAGCCCCTCAAGGTGTTTTGCATGCAGTTTGGGTATACAAAATAGTAAAGATTGCAAT +TGCAGTAAAAATAATATTGCAAGTTATAACTTTTTAGGATTAAAGAGTAATGGTGTTTTGGACTATAGA +ACTTTAGAAACTAAGTGAATTTTTATTATAAATCTTTTTTTCCCTCGTGTATTTGGGTTAAAAAAACAA +GAAGAGAGAATCGAGAAAGATATTCCTATTAGTTTAAGTTCTTTCGAATTTTCTCTTATTTGTAAAATT +TCAAGTATTACTATATACGATATATTATATTAAGTTGAAAAG >Contig2 GCTCTTCCAACAACAACAACAATGCCTCATCAAAAGCCTCTTTCTCTCATTCTTCTATCTACACTCCCAC +TTCTTTTCATTCTCACACAAGCTCAATCACCAACAGCACCAGCACCAGCACCCTCAGGACCAATAGACA +TCTTTGCAATCCTCAAAAAAGAAGGACAATACAACACATTCATCAAGTTCCTAAATGAATCACAAGTTG +GTAACCAAATCAACAACCAAGTAAACAACTCCAACCAAGGCATGACAGTTTTGGCACCATCAGACAATG +CATTTAACAACCTCCCAAGTGGTACACTCAACCAACTAAATGACCAACAAAAAGTACAACTCATTTTGA +ACCATGTCATACCAAAGTTCTACACATTTGATGACTTACAAACAGTAAGCAACCCTGTTAGAACACAAG +CAACAGGGCCTAAAGGTGAGCCTTTTGGACTTAACTTTACTGGAAGTAACAATCAAGTGAATGTCTCAT +CTGGTTCTGTTGTTACAAACATTTATAATGCTATTAGAAAAGACCCCCCATTGGCTGTTTTTCAATTAG +ACAAAGTTTTAGTACCTTCTCAGTTTACTGATCCATCTAGTGATGATGATGCCCCTGCACCTACTAAAC +CCAAGAATGGTACTAGTAATGATAAAACAACAGCTGATGAGCCATCACCAGCAAGTAACACTAAGCCAA +ATGATGCTAAAAGGATCAGTGGTGGGATTCTTGGATTGGTTTGTGGTGTTTTCTTGATGGCAACACTAT +CTTGAAGGGGGCTACAGAGTTGTTAACTTTATGATCTTTTGCTTATACTAAGCCATTTTGTATTACATT +GTTTTCTTCAAGATTGATTGTTTTTGTTCAAAAAAGAAGGGGGGGGGGGAAAAAAAAACCCCCCTGCGG +AAAAGAGCGGGGAAAGCACCAAAAAGCCACCGACCAAAAGCACCAACTCACAAAAGGTGCGCAGACGCG +GAAAGGGGAAAAGGAAAAAATGTGAAAGCTTGTTATAGTTTG >Contig3 AAACTGTAATTAGACTTCTCTGCTAAGTTTCTGCTGTATTTGGATTCTCCGGCGAACATTAATATCTAAC +CATGACCGGCGGTGGAGGCGATGCCGCATCGCCGCCTCTATCCTCACAGTCAACTCCATCCAACGGTGG +GGAATTCCTTCTTCAATTGCTTCAGAATCATCCGCATCAACTTCACTCTCAGCCTCAACCGCCACTGCG +GCCGGAGTTGCAGAATCTGCCGCATGATCCAGCAGTTGCAGCAGTAGGTCCTAGTATGCCCTACCCGCC +ATTGTTCCATACTCCTACAAACCCTTCTGTTTTGCCCTATTCTCACTCTCCTCCTCTGTTTGTACCTCA +TAACTTCTTCATTCGAGGGTTTCTCCAAAACCCTAATTCTGGCCATACCACTAACCCCAATTACTCATC +TCCGCCTGCCCCAAGTGGGTTCAGTCAATATCACCATGCGAGTCCACTTGGATTTGGATCAGTCGGAGA +AAACATGGGCAATTTGGGGATTTTCGGTGCCAATGCTAAGGCGAG >Contig4 CATGTAATAGCATAGCATCCCCAATTTCACCCTCTCATGGCCATGTCCACGCTCCTCTCCCTGTCCGTGT +CTATCCACCCACCAAAACCTTTGCAAAAACCCAATTCAATGTGTACCCAACCTAACTCTATTTCGAGAA +GACAAGTGTTTTTCACTGGTTCTAATTTATTGCTCTCTCAATTAATTCCAAAATCCGACGCCCAAACCA +ATTCCAATAGTTTTCTTTCAGGTATTGCCAATACTAAGTCTTGGTTCCAATTCTATGGCGACGGCTTTT +CTATTCGTGTTCCACCGGAATTTCAGGACCTCACTGAGCCGGAGGATTATAATGCTGGCCTATCACTAT +ATGGAGATAAGGCTAAGCCCAAAAAATTTGCAGCACGTTTTGCTTCTTCTGATGGATCCGAAGTTTTAA +GTGTCATAATTCGTCCATCCAATCAGCTGAAGATCACTTTCTTAGAGGCTAAAGATATTACTGATTTAG +GTTCACTTAAGGAGGCAGCAAAAATATTTGTTCCAGCTGGCTCAACACTATATTCTGTCCGCACAATAA +AAATTAAAGAAGATGAGGGTTTCAGGACATACTATTTTTATGAATTTGTGAGAAATGAGCAACACGTTG +CATTAGTGGCTGGTGTTAACAGTGGAAAGGCCGTCATTGCTGGTGCCACGGCCCCCGAAAGCAAATGGG +CCGAGGATGGTTTGAAGCTCCGATCTGCTGCAGTATCAATGACAATTCTATAAGCAGAATGTGAGTATA +TATATAGGTTCTATTTCAATGATGATGAATTTATATACAAATATTGAGGATCAAAGTTTTCTTATTATC +ATCTAATCTCAGCCAAGGATTAACAATCTCCATCATCCATTCAATAGCAATGTTTCTGCTGTTTTGC
      These are the two files.In the blast result contig2 and contig 3 shows no blast hits so i need to extract these 2 contig sequences from contig file and print into a seperate text file

        When you post it clearly says:

        Use:  <p> text here (a paragraph) </p>
        and:  <code> code here </code>
        to format your post; it's "PerlMonks-approved HTML":

        Please do so. Take the time to read and understand How do I post a question effectively?. What part of this task are you having problems with? Show us your code and the output.

Re: how to create output file using perl
by 1nickt (Canon) on Jul 01, 2015 at 13:22 UTC

    Better now that you formatted the files' content! But it's still not clear what your objective is. How did the text under 'contig1' and 'contig4' get processed into the output file? Can you show the code for that? Why didn't the text under 'contig2' and 'contig3' get processed correctly? You need to understand why, otherwise you won't be able to fix the problem and it might happen again.

    So please post the code that you use so far ...

    If your problem is that when you processed your data file, it only processed the first and the last sections, maybe you just need a better regexp? You can get the strings out of your data file very easily with Perl.

    #!/usr/bin/env perl use strict; use warnings; use File::Slurp::Tiny 'read_file'; my $file = 'contig.txt'; my $slurp = read_file($file); my %results; while ( $slurp =~ />Contig(\d+).+?([A-Z]+)/sg ) { $results{ $1 } = $2; } foreach my $test_number (sort keys %results ) { print "Test $test_number: $results{ $test_number }\n\n"; ## do something to process $test_number, $results{ $test_number } .. +. } __END__ OUTPUT: Test 1: GAGCTAAATAATTTGAATCAATGGGAAGATCACCGTGTTGTGAAAAAGCACATACAAATAAA +GGAGCTTGGACTAAAGAAGAAGATGAACGACTTATTTCTTATATTAAAACTCACGGCGAAGGTTGCTGG +AGATCCCTTCCTAAAGCTGCCGGACTTCTCCGATGCGGTAAAAGTTGCCGTCTCCGATGGATTAATTAC +TTGAGACCGGACCTTAAACGCGGTAATTTTACTGAAGAAGAAGATGAACTCATTATCAAACTCCATAGC +CTCCTTGGTAACAAATGGTCACTTATAGCCGGAAGATTACCAGGAAGAACAGATAATGAGATAAAAAAT +TACTGGAATACGCACATAAGAAGGAAGCTTTTGAGTCGGGGCATTGATCCAACGACACACAGGCCTGTT +AACGAGCCTGGTACAACGCAAAAAGTCACAACAATTTCATTTGCAGGTGGAGATCATAAAACTAAAGAT +ATTGAAGAAGATCATAATAAGATGATAAATGTCAAAGCTGAATCTGGGTTGAGTCAATTAGAAGATGAA +ATTATTAGTAGCAGTCCATTTCGAGAACAGTGTCCTGATTTAAATCTTGAGCTCAAATTAGCCCTCCTT +CTCTACAAAATTACCAACATAGCCCCTCAAGGTGTTTTGCATGCAGTTTGGGTATACAAAATAGTAAAG +ATTGCAATTGCAGTAAAAATAATATTGCAAGTTATAACTTTTTAGGATTAAAGAGTAATGGTGTTTTGG +ACTATAGAACTTTAGAAACTAAGTGAATTTTTATTATAAATCTTTTTTTCCCTCGTGTATTTGGGTTAA +AAAAACAAGAAGAGAGAATCGAGAAAGATATTCCTATTAGTTTAAGTTCTTTCGAATTTTCTCTTATTT +GTAAAATTTCAAGTATTACTATATACGATATATTATATTAAGTTGAAAAG Test 2: GCTCTTCCAACAACAACAACAATGCCTCATCAAAAGCCTCTTTCTCTCATTCTTCTATCTAC +ACTCCCACTTCTTTTCATTCTCACACAAGCTCAATCACCAACAGCACCAGCACCAGCACCCTCAGGACC +AATAGACATCTTTGCAATCCTCAAAAAAGAAGGACAATACAACACATTCATCAAGTTCCTAAATGAATC +ACAAGTTGGTAACCAAATCAACAACCAAGTAAACAACTCCAACCAAGGCATGACAGTTTTGGCACCATC +AGACAATGCATTTAACAACCTCCCAAGTGGTACACTCAACCAACTAAATGACCAACAAAAAGTACAACT +CATTTTGAACCATGTCATACCAAAGTTCTACACATTTGATGACTTACAAACAGTAAGCAACCCTGTTAG +AACACAAGCAACAGGGCCTAAAGGTGAGCCTTTTGGACTTAACTTTACTGGAAGTAACAATCAAGTGAA +TGTCTCATCTGGTTCTGTTGTTACAAACATTTATAATGCTATTAGAAAAGACCCCCCATTGGCTGTTTT +TCAATTAGACAAAGTTTTAGTACCTTCTCAGTTTACTGATCCATCTAGTGATGATGATGCCCCTGCACC +TACTAAACCCAAGAATGGTACTAGTAATGATAAAACAACAGCTGATGAGCCATCACCAGCAAGTAACAC +TAAGCCAAATGATGCTAAAAGGATCAGTGGTGGGATTCTTGGATTGGTTTGTGGTGTTTTCTTGATGGC +AACACTATCTTGAAGGGGGCTACAGAGTTGTTAACTTTATGATCTTTTGCTTATACTAAGCCATTTTGT +ATTACATTGTTTTCTTCAAGATTGATTGTTTTTGTTCAAAAAAGAAGGGGGGGGGGGAAAAAAAAACCC +CCCTGCGGAAAAGAGCGGGGAAAGCACCAAAAAGCCACCGACCAAAAGCACCAACTCACAAAAGGTGCG +CAGACGCGGAAAGGGGAAAAGGAAAAAATGTGAAAGCTTGTTATAGTTTG Test 3: AAACTGTAATTAGACTTCTCTGCTAAGTTTCTGCTGTATTTGGATTCTCCGGCGAACATTAA +TATCTAACCATGACCGGCGGTGGAGGCGATGCCGCATCGCCGCCTCTATCCTCACAGTCAACTCCATCC +AACGGTGGGGAATTCCTTCTTCAATTGCTTCAGAATCATCCGCATCAACTTCACTCTCAGCCTCAACCG +CCACTGCGGCCGGAGTTGCAGAATCTGCCGCATGATCCAGCAGTTGCAGCAGTAGGTCCTAGTATGCCC +TACCCGCCATTGTTCCATACTCCTACAAACCCTTCTGTTTTGCCCTATTCTCACTCTCCTCCTCTGTTT +GTACCTCATAACTTCTTCATTCGAGGGTTTCTCCAAAACCCTAATTCTGGCCATACCACTAACCCCAAT +TACTCATCTCCGCCTGCCCCAAGTGGGTTCAGTCAATATCACCATGCGAGTCCACTTGGATTTGGATCA +GTCGGAGAAAACATGGGCAATTTGGGGATTTTCGGTGCCAATGCTAAGGCGAG Test 4: CATGTAATAGCATAGCATCCCCAATTTCACCCTCTCATGGCCATGTCCACGCTCCTCTCCCT +GTCCGTGTCTATCCACCCACCAAAACCTTTGCAAAAACCCAATTCAATGTGTACCCAACCTAACTCTAT +TTCGAGAAGACAAGTGTTTTTCACTGGTTCTAATTTATTGCTCTCTCAATTAATTCCAAAATCCGACGC +CCAAACCAATTCCAATAGTTTTCTTTCAGGTATTGCCAATACTAAGTCTTGGTTCCAATTCTATGGCGA +CGGCTTTTCTATTCGTGTTCCACCGGAATTTCAGGACCTCACTGAGCCGGAGGATTATAATGCTGGCCT +ATCACTATATGGAGATAAGGCTAAGCCCAAAAAATTTGCAGCACGTTTTGCTTCTTCTGATGGATCCGA +AGTTTTAAGTGTCATAATTCGTCCATCCAATCAGCTGAAGATCACTTTCTTAGAGGCTAAAGATATTAC +TGATTTAGGTTCACTTAAGGAGGCAGCAAAAATATTTGTTCCAGCTGGCTCAACACTATATTCTGTCCG +CACAATAAAAATTAAAGAAGATGAGGGTTTCAGGACATACTATTTTTATGAATTTGTGAGAAATGAGCA +ACACGTTGCATTAGTGGCTGGTGTTAACAGTGGAAAGGCCGTCATTGCTGGTGCCACGGCCCCCGAAAG +CAAATGGGCCGAGGATGGTTTGAAGCTCCGATCTGCTGCAGTATCAATGACAATTCTATAAGCAGAATG +TGAGTATATATATAGGTTCTATTTCAATGATGATGAATTTATATACAAATATTGAGGATCAAAGTTTTC +TTATTATCATCTAATCTCAGCCAAGGATTAACAAT CTCCATCATCCATTCAATAGCAATGTTTCTGCTGTTTTGC
    Remember: Ne dederis in spiritu molere illegitimi!
      First I downloaded all the est fasta sequences of tomato from NCBI.Then I submit that sequence file into an online tool EGassembler for sequence cleaning,vector masking,repeat masking,organelle masking and sequence assembly..As a result I got this contig file..This contig file is used for offline local blast..For doing blastn I downloaded the genome of Arabidopsis thaliana.Then I run the blast..

        Nice, sounds like a fun project!

        So it sounds like the contig file is produced correctly. And it runs "the blast" correctly on the first and the last "contig" in the file. But not on the 2nd or 3rd.

        Sounds like there is a problem passing the individual "contig" sections to the "blatster."

        Have you tried manually splitting up the contig file into smaller pieces and passing them to the blaster? If you cut the file in half and passed #1 + #2 in one file and #3 + #4 in another, and both those files processed correctly, you might conclude that the error is in how you pass the files. If you do that and still #2 and #3 don't process, you might conclude that there is bad data in those contigs.

        How does the blaster report if it finds an error in the input data?

        Remember: Ne dederis in spiritu molere illegitimi!
Re: how to create output file using perl
by Anonymous Monk on Jul 01, 2015 at 07:01 UTC
    What is your level of perl knowledge, have you read perlintro?
      I know the basics of perl....I read perlintroduction
A reply falls below the community's threshold of quality. You may see it by logging in.