?
Solved

creating a hash

Posted on 2000-03-25
1
Medium Priority
?
179 Views
Last Modified: 2010-03-05
I have a file containing IP addresses. I want to read a file, and make a hash with IPs being the keys and the number of times that IP appears in the file as the value. So a file like this:


0.0.0.0
1.2.3.4
0.0.0.0
4.5.6.7
0.0.0.0
1.2.3.4

would create a hash like this:

%ips = (

0.0.0.0 => 1,
1.2.3.4 => 2,
4.5.6.7 => 3,

);

What I really need this for is counting IP accesses in a log file. I'll parse the log file, and:

1. if the IP is not already in the hash, add a key/value pair of <IP>=>"1".

2. if the IP is already in the hash, increment the value.

(how is this done?)

-Mike K.
0
Comment
Question by:lunaboy
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
1 Comment
 
LVL 19

Accepted Solution

by:
Kim Ryan earned 200 total points
ID: 2657502
open(FH,"<ip_access.txt");
while (<FH>)
{
   chomp($_);
   $current_ip = $_;
   # increment occurence count, stored as value
   $ips{$current_ip}++;
}
close(FH);

foreach $ip (sort keys %ips)
{
   print("$ip was hit $ips{$ip} times\n");
}
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Email validation in proper way is  very important validation required in any web pages. This code is self explainable except that Regular Expression which I used for pattern matching. I originally published as a thread on my website : http://www…
I have been pestered over the years to produce and distribute regular data extracts, and often the request have explicitly requested the data be emailed as an Excel attachement; specifically Excel, as it appears: CSV files confuse (no Red or Green h…
Explain concepts important to validation of email addresses with regular expressions. Applies to most languages/tools that uses regular expressions. Consider email address RFCs: Look at HTML5 form input element (with type=email) regex pattern: T…
Six Sigma Control Plans
Suggested Courses

765 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question