Simple egrep pattern


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Simple egrep pattern
# 1  
Old 04-14-2009
Simple egrep pattern

I'm new to egrep. What pattern could I use to find all lines that match this pattern: <beginning of line><any amount of whitespace>sub<space>. I want it to return the entire line.

(I'm trying to generate a list of all Perl sub definitions in a list of Perl modules.)

Thanks for your help!
# 2  
Old 04-14-2009
First, it's suggested to use grep -E instead of egrep, since it's more portable.
Second, pretty much the same pattern that you would use in Perl.
# 3  
Old 04-14-2009
1. Portability isn't a concern to me since I'm not going to deploy this command.

2. What pattern would I use in Perl then?
# 4  
Old 04-14-2009
can you post sample input you want to grep
# 5  
Old 04-14-2009
I have a collection of Perl code files which define several subs. Most appear to have some whitespace (spaces or tabs) before the first line of the sub definition:

sub subname {

I want to use egrep (or grep -E) to find all these, because simple grep for the word sub returns lots of lines I don't want to see (like Perl comments and things in quotes).

Examples of lines I don't want to see:
# sub subname {
print "This sub does something"
# 6  
Old 04-14-2009
Portability doesn't have anything to do with deployment IMO, but should be looked after by the developer.
And the pattern you're looking for is
Code:
^[[:space:]]*sub[[:space:]]+ #grep -E
^\s*sub\s+ #perl

# 7  
Old 04-14-2009
say you don't want lines with "# sub subname " and want only "sub subname {" to be listed.

grep -v "# sub subname" *.perl | grep -h "sub subname {"
grep -v "# sub subname" ./* | grep -h "sub subname {"
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

EGREP pattern advice

Hi, I need advice on a simiple pattern check, Orginal Code bpimagelist -backupid xxxxxxxxxxxxx | grep "FRAG " | egrep -i "C5|W5" | awk 'NR==1{print $2,$9} 1 MAC514 What i want is to find any media beinging with C5|W5. I have tried ^C5|^W5, but this does not work. Removed... (3 Replies)
Discussion started by: Junes
3 Replies

2. Shell Programming and Scripting

Including EOL in egrep pattern for multiple lines

Hi all I need your help to get a high-performance solution. I am working on a extensive script to automate file restores using the bprestore tool on a Solaris 5.10 server (bash 3.00). I will only paste the needed parts of the script to avoid any confusion. To use the script the user has to... (2 Replies)
Discussion started by: Anonym
2 Replies

3. UNIX for Dummies Questions & Answers

Problem pattern redundancy with egrep

%%%%% (2 Replies)
Discussion started by: lucasvs
2 Replies

4. Shell Programming and Scripting

egrep help required to find pattern

Hi All, Can some one please help me how to grep the comments from "oracle" & "sybase" code. I would like to grep below type of pattern. -- /* */ Please help. (6 Replies)
Discussion started by: gr8_usk
6 Replies

5. Shell Programming and Scripting

How to egrep multiple pattern

Hi everyone i want to write a script to grep multiple pattern from all the file from a dir. for example I want to get all the record number from XML file who's last name is asd, smith, dfrt,gokul,and sinha. I tried egrep('sinha'|'gokul'|'asd') but it is not working also i tried saving... (2 Replies)
Discussion started by: revertback
2 Replies

6. Shell Programming and Scripting

grep/egrep end of pattern

Hi I use arp to get the mac-addresses of my hosts. # arp -a | grep 192.168.0. e1000g0 192.168.0.1 255.255.255.255 o 00:00:00:00:00:01 e1000g0 192.168.0.11 255.255.255.255 o 00:00:00:00:00:02 e1000g0 192.168.0.2 255.255.255.255 ... (12 Replies)
Discussion started by: domi55
12 Replies

7. Solaris

how to grep or egrep pattern of apache access_log file

Hi I need to look for the range dates of access_log for example: between 02/May/2009:14:56:20 and 05/May/2009:18:46:06 then write the content to another file. Date and time is very important for me to concatenate them into access_log later. Thanks (2 Replies)
Discussion started by: lamoul
2 Replies

8. Shell Programming and Scripting

HOW to egrep fo a pattern

Hi, I want to use egrep to match this expression in my file. The expression begins with the word SCHEDULE and ends with PFTDGNIN. In between these 2 words there can be anything. EX: Line1: SCHEDULE NWERRR#PFTDGNIN Line2: FOLLOWS NWD@AAS#PFTDGNIN So as a result of the egrep command... (1 Reply)
Discussion started by: eliewadi
1 Replies

9. Shell Programming and Scripting

Simple to you not simple to me pattern matchin help

hey all, im new and my first question is: say i have a word "blahblah" how do i get and replace the last letter of the word with say k, so replace the h with a k. However you cant just replace the h it has to change the LAST LETTER of the word. Cheers In advance. :b: (0 Replies)
Discussion started by: aleks001
0 Replies

10. UNIX for Dummies Questions & Answers

egrep a certain pattern

hey guys this is my first post here, heard a lot about these forums. Iam urgently in need of a command which would help me accomplish the following , for example a file has these contents: 211 61 2007-06-26 13:47:32 211 61 2007-06-26 09:53:43 211 61 2007-06-26 15:25:14 211 61 2007-06-26... (5 Replies)
Discussion started by: trust123
5 Replies
Login or Register to Ask a Question