Grep Three Words


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Grep Three Words
# 1  
Old 08-30-2005
Grep Three Words

I have been trying to find files containing the words AAA, BBB and CCC.
I tried:

grep AAA `grep BBB files*` grep CCC files*
but is does not work
I tried several ways

this is an easy one but I am a dummy, Does anyone can help me?
Thanks
Smilie
# 2  
Old 08-30-2005
Code:
grep -l CCC $(grep -l BBB $(grep -l AAA files*))

This will work as follows: the innermost grep will search for files that have "AAA" and print the filenames. The filenames printed are used by the second grep to search for string "BBB". This grep will also print the filenames. Now the filenames printed by the second grep contain both "AAA" and "BBB". Then the last(outermost) grep will search for "CCC" in the filenames printed by the second grep. The filenames that are printed by the outermost grep contain all three patterns.
# 3  
Old 08-30-2005
or fgrep -e 'AAA' -e 'BBB' -e 'CCC' file_name
# 4  
Old 08-30-2005
Quote:
Originally Posted by Student37
or fgrep -e 'AAA' -e 'BBB' -e 'CCC' file_name
This will return files that contain any of the patterns, not all. The OP wants to get files that have all the three patterns (I think).
# 5  
Old 08-31-2005
wondering whether will not suffice?
grep AAA file* | grep BBB | grep CCC
# 6  
Old 08-31-2005
Quote:
Originally Posted by blowtorch
Code:
grep -l CCC $(grep -l BBB $(grep -l AAA files*))

This will work as follows: the innermost grep will search for files that have "AAA" and print the filenames. The filenames printed are used by the second grep to search for string "BBB". This grep will also print the filenames. Now the filenames printed by the second grep contain both "AAA" and "BBB". Then the last(outermost) grep will search for "CCC" in the filenames printed by the second grep. The filenames that are printed by the outermost grep contain all three patterns.
Thanks blowtorch, this one worked fine!!!
# 7  
Old 09-01-2005
Code:
grep -E "aa|bb|cc" filename
grep -e "aa" -e "bb" -e "cc" filename
or
egrep -E "aa|bb|cc" filename

 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to grep the words with space between?

see I have a text like: 27-MAY 14:00 4 aaa 5.30 0.01 27-MAY 14:00 3 aaa 0.85 0.00 27-MAY 14:00 2 aaa 1.09 0.00 27-MAY 14:00 5 aaa 0.03 0.00 27-MAY 14:00... (3 Replies)
Discussion started by: netbanker
3 Replies

2. Shell Programming and Scripting

Grep two words with exact match

HI Input : Counters Counter Int Ints Counters Counters Ints Ints I want to grep Counter|Int Output : Counter (1 Reply)
Discussion started by: pareshkp
1 Replies

3. UNIX for Dummies Questions & Answers

Grep words with X doubles only

Hi! I'm trying to figure out how to find words with X number of doubles, only. I'm searching a dictionary, (one word per line). For instance, if you want to find words containing only one pair of double letters, you could do something like this: egrep '(.)\1' wordlist.txt |egrep -v '(.)\1.*(.)\2'... (3 Replies)
Discussion started by: sudon't
3 Replies

4. Shell Programming and Scripting

Grep multiple words with not null value

Hi, I want to grep a file if any one (GH, IJ, KL) is not null. If it is null i dont want to pull anything. cat file | awk '{print ($1)}' Parameters are : AB=123;CD=456;EF=6789; cat file | awk '{print ($2)}' GH=456;IJ=789;KL=1011 eg: Contents in file: Parameters are :... (10 Replies)
Discussion started by: Neethu
10 Replies

5. Shell Programming and Scripting

grep words from txt

Queue on node in domain description : type : local max message len : 104857600 max queue depth : 5000 queue depth max event : enabled persistent msgs : yes backout threshold : 0 msg delivery seq :... (4 Replies)
Discussion started by: Daniel Gate
4 Replies

6. UNIX for Dummies Questions & Answers

Eliminate Hyphenated Words in Grep

How do you negate a literal hyphen/dash in a regex? If it's the first character inside the brackets, then it is read literally. But if you stick a caret to the left of it, to negate it, then it seems it is no longer read literally. Or whatever, it doesn't work. Nor does escaping it seem to... (3 Replies)
Discussion started by: sudon't
3 Replies

7. Shell Programming and Scripting

grep for words in file

Hi Please can you help me on this: How to grep for multiple words in a file, BUT for every word found output it to a new line. regards FR (8 Replies)
Discussion started by: fretagi
8 Replies

8. Shell Programming and Scripting

grep words from output file

Hi, By using shell scripit i have save output in one file. I want to grep two words named CLUSTER and CLUSQMGR from that output file. How to grep that. output file would be having below words TYPE(QCLUSTER) ALTDATE(2010-05-17) CLUSTER(QS.CL.MFT1) ... (5 Replies)
Discussion started by: darling
5 Replies

9. Shell Programming and Scripting

find words with grep....

I have a .txt file which contains several lines of text. I need to write a script program using grep or any other unix tool so as to detect part of the text (words) between / / that begin with the symbol ~. For example if somewhere in the text appears a webpage address like... (8 Replies)
Discussion started by: chrisxgr
8 Replies

10. Shell Programming and Scripting

How to grep for two or more words in a line at the same time?

I want to search a heap of files but using an either OR or AND condition for two or more strings. How can I do this? i.e. file1 has the following file testfile primary and file2 has this ... file testfile2 secondary If I use this ... find . -type f -exec grep "testfile" {}... (2 Replies)
Discussion started by: ElCaito
2 Replies
Login or Register to Ask a Question