The UNIX and Linux Forums  

Go Back   The UNIX and Linux Forums > Top Forums > UNIX for Dummies Questions & Answers
Google UNIX.COM


UNIX for Dummies Questions & Answers If you're not sure where to post a UNIX or Linux question, post it here. All UNIX and Linux newbies welcome !!

More UNIX and Linux Forum Topics You Might Find Helpful
Thread Thread Starter Forum Replies Last Post
Grep question. saurabhsinha23 UNIX for Dummies Questions & Answers 3 12-10-2007 09:58 PM
Question about GREP Adriel UNIX for Dummies Questions & Answers 16 03-22-2007 04:03 AM
Another grep question kingdbag UNIX for Dummies Questions & Answers 6 10-26-2006 10:56 PM
grep & sed question der Kopf Shell Programming and Scripting 1 11-22-2004 12:49 AM
Grep question eloquent99 UNIX for Dummies Questions & Answers 4 02-20-2003 06:49 AM

Reply
 
Submit Tools LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old 10-04-2007
Registered User
 

Join Date: Oct 2007
Posts: 2
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Reddit! Stumble this Post!Spurl this Post!
grep question

I wanted to search a for all lines containing ERROR but not errors that contained the word "foo" (for example). The only way I could figure out to do it was:

grep ERROR myfile.log | grep -v foo

is there a way to do this with one grep command instead of two? One grep is faster than two, especially for large files like log files.
Reply With Quote
Forum Sponsor
  #2 (permalink)  
Old 10-04-2007
radoulov's Avatar
addict
 

Join Date: Jan 2007
Location: Milan, Italy/Varna, Bulgaria
Posts: 1,331
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Reddit! Stumble this Post!Spurl this Post!
Use:

Code:
awk '/ERROR/&&!/foo/' file
or:

Code:
fgrep ERROR file|fgrep -v foo
Reply With Quote
  #3 (permalink)  
Old 10-04-2007
Registered User
 

Join Date: Aug 2005
Location: India
Posts: 17
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Reddit! Stumble this Post!Spurl this Post!
Sanju

Hi use
grep -r "ERROR" *
Reply With Quote
  #4 (permalink)  
Old 10-05-2007
Registered User
 

Join Date: Oct 2007
Posts: 2
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Reddit! Stumble this Post!Spurl this Post!
radoulov, isn't "fgrep ERROR file|fgrep -v foo "-the same as doing "grep ERROR file | grep -v foo", except it uses fgrep instead of grep? Is there some advantage for fgrep in this case?

The awk thing is pretty cool - I tried it and it works great. I'll have to look into awk more - I know nothing about it (yet!).

sanjustudy, I don't understand how grep -r "ERROR" * will do what I want. I thought "-r" was for searching directories recursively. Also, I don't see how it searches for "foo".
Reply With Quote
  #5 (permalink)  
Old 10-05-2007
radoulov's Avatar
addict
 

Join Date: Jan 2007
Location: Milan, Italy/Varna, Bulgaria
Posts: 1,331
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Reddit! Stumble this Post!Spurl this Post!
Quote:
Originally Posted by tim-bobby View Post
radoulov, isn't "fgrep ERROR file|fgrep -v foo "-the same as doing "grep ERROR file | grep -v foo", except it uses fgrep instead of grep? Is there some advantage for fgrep in this case?
[...]
If you don't search for a RE, it should be faster:

Quote:
DESCRIPTION
The fgrep (fast grep) utility searches files for a character
string and prints all lines that contain that string. fgrep
is different from grep(1) and egrep(1) because it searches
for a string, instead of searching for a pattern that
matches an expression. It uses a fast and compact algorithm.
Reply With Quote
Google UNIX.COM
Reply

Thread Tools
Display Modes


The 50 most popular UNIX and Linux searches.
Google Search Cloud for The UNIX and Linux Forums
421 service not available, remote server has closed connection ^m automate ftp autosys awk trim bash eval bash for loop boot: cannot open kernel/sparcv9/unix command copy/move folder in unix couldn't set locale correctly curses.h cut command in unix find grep find mtime find null character in a unix file grep multiple lines grep or grep recursive hp-ux ifconfig inaddr_any inappropriate ioctl for device lynx javascript mailx attachment mget mtime perl array length ping port remove first character from string in k shell replace space by comma , perl script rsync ftp scp recursive segmentation fault(coredump) sftp script snoop unix solaris change ip address stale nfs file handle syn_sent tar exclude tar extract to folder test: argument expected unix unix .profile unix forum unix forums unix internals unix interview questions unix mtime unix simulator unix.com while loop within while loop shell script


All times are GMT -7. The time now is 01:44 AM.


Powered by: vBulletin, Copyright ©2000 - 2006, Jelsoft Enterprises Limited.
The UNIX and Linux Forums Content Copyright ©1993-2008 The CEP Blog All Rights Reserved -Ad Management by RedTyger Visit The Global Fact Book

Content Relevant URLs by vBSEO 3.2.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101