grep & RegEx Syntax- How to Match?

Drew Tomlinson drew at mykitchentable.net
Mon May 17 08:13:42 PDT 2004


I've learned a little about regular expressions and am trying to use 
them with grep.  I want to parse my httpd log to return entries that 
contain a particular IP address and file ending in .htm or .html.  I 
want to match lines like this one:

123.456.789.123 - - [17/May/2004:06:54:53 -0700] "GET 
/public/murphys/produced/tricks.html HTTP/1.0" 200 5446 "-" 
"Mozilla/4.77 [en] (X11; U; Linux 2.2.19 i686)"

I'm using the this command:

egrep -e ^123\.456\.789\.123.*htm.* /path/to/file

However this does not match anything.  If I shorten the regex to 
^123\.456\.789\.123, I match all entries with that IP address.  And if I 
use 'htm' as the regex, I get match all lines with html files.  But I 
can't find the right syntax to match on both conditions.

Thanks for your help!

Drew

-- 
Visit The Alchemist's Warehouse
Magic Tricks, DVDs, Videos, Books, & More!

http://www.alchemistswarehouse.com



More information about the freebsd-questions mailing list