Solved

parsing a line in nmap's output

Posted on 2008-06-20
3
316 Views
Last Modified: 2010-04-21
I am using nmap::parser to parse the results of an nmap scan.  One thing this module does not provide for is obtaining information about hosts that don't respond to a ping. Nmap reports these hosts as "up", and in the output file the ports scanned are listed as "extraports".  I can get the number of these ports, but not the actual ports themselves.  In order to to do, I am parsing the args variable, which is what I need help with.  This is the content of a sample args variable:
      args = "nmap -sS -P0 -vv -p21,23,25,80 -O ...."

The critical part is here is that I want to search/grep for "-p" in the variable $args, then read everything past the "-p" to the next space.  So in the example above my new variable would contain "21,23,25,80".  I'll then split that via the comma.  What I can't figure out is how to search/grep for "-p" in a variable, and read thru until I hit a space.  Can anyone help me with that in perl?  Thank you.
0
Comment
Question by:kathys39
3 Comments
 
LVL 84

Expert Comment

by:ozo
Comment Utility
($read) = $args =~ /-p(\S*)/;
0
 
LVL 14

Accepted Solution

by:
agriesser earned 250 total points
Comment Utility
I'd suggest to use regular expressions to accomplish this.
$args="nmap -sS -P0 -w -p21,23,25,80 -O ...";
 

$args=~s/^.*-p([^ ]+).*$/$1/g;

print $args;

Open in new window

0
 

Author Closing Comment

by:kathys39
Comment Utility
excellent, thank you!
0

Featured Post

Highfive + Dolby Voice = No More Audio Complaints!

Poor audio quality is one of the top reasons people don’t use video conferencing. Get the crispest, clearest audio powered by Dolby Voice in every meeting. Highfive and Dolby Voice deliver the best video conferencing and audio experience for every meeting and every room.

Join & Write a Comment

Suggested Solutions

I've just discovered very important differences between Windows an Unix formats in Perl,at least 5.xx.. MOST IMPORTANT: Use Unix file format while saving Your script. otherwise it will have ^M s or smth likely weird in the EOL, Then DO NOT use m…
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…
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…
This demo shows you how to set up the containerized NetScaler CPX with NetScaler Management and Analytics System in a non-routable Mesos/Marathon environment for use with Micro-Services applications.

744 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

Need Help in Real-Time?

Connect with top rated Experts

16 Experts available now in Live!

Get 1:1 Help Now