Here's what I'm doing now:
my %hash_one = ('string_one' => 0, 'string_two' => 0, 'string_three' => 0, 'string_four' => 0, 'string_five' => 0, 'string_six' => 0, 'string_seven' => 0) foreach $i(keys %hash_one){ $hash_one{$i} = `grep -c '$hash_one{$i}' file.txt`; }
What I want to do is get rid of the loop and grep the file for each string all at once and have the values dumped into the right part of the hash.
There are >50 things I'm looking for and the file is about 100Mb.
I understand that using fork() may be my solution, and I've looked into it but I'm afraid I'm just not getting it.
Any help would be greatly appreciated
Thanks
John
ps. I don't need to have it in a hash, I just need to be able to hook up the right string to the right count later.

In reply to some forking help by JohnATmbd

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



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.