How to Extract text between two strings?


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting How to Extract text between two strings?
# 15  
Old 07-06-2011
Hi,

Try this:

Code:
grep "string1" a.txt | cut -d' ' -f5


Last edited by Franklin52; 07-07-2011 at 07:08 AM.. Reason: Please use code tags for code and data samples, thank you
# 16  
Old 07-06-2011
@michaelrozar17

Sed version is 4.1.2 of GNU

after using awk command---output file content is-----

spotlight -verilog file.v -$regression -batch -policy=xyz -rules ABC,abc,pqr -wd
ir ../other_files

now i want ABC,abc,pqr only.

it is sure that it will come after -rules but -rules position is not fix in the line so the field can vary for different file so i have to search -rule then extract the next strings till next space.

So Reply me with the suitable solution

Thanks
Manish

---------- Post updated at 05:29 PM ---------- Previous update was at 05:25 PM ----------

@gprashant

Thanks for reply.
i know about this solution.
But problem is string field position is not fix for different file.
so i can not use field operator $5. it may be five in some cases it may be anything.

so i have to search string and then print the next string till the space.

Thanks
MAnish
# 17  
Old 07-06-2011
If the searchd sttring is always "rules" then try this awk liner...
Code:
awk -F- '{for(i=1;i<=NF;i++) if($i~"^rules"){gsub("rules| ","",$i);print $i}}' file

# 18  
Old 07-06-2011
Hi,
Try this:
Code:
sed -n '/WORD1/,/WORD2/p' /path/to/file


Last edited by Franklin52; 07-07-2011 at 07:08 AM.. Reason: Please use code tags for code and data samples, thank you
# 19  
Old 07-06-2011
Ok. Guess your inputfile has both rules and -rules words..The below given input file is as posted by you.
Code:
$cat infile
Script---

#interpreter
cd directory
spotlight -verilog file.v -$regression -batch -policy=xyz -rules ABC,abc,pqr -wdir ../other_files
cd ...

$sed -n '/-rules/s/.*rules \([^ ]*\) .*/\1/p' infile
ABC,abc,pqr
$sed -n '/-rules/s/.*rules \(.*\) -.*/\1/p' infile
ABC,abc,pqr


Last edited by michaelrozar17; 07-07-2011 at 04:42 AM.. Reason: typo
# 20  
Old 07-07-2011
Hi Manish,

how about this:

Code:
awk -F"-string1" '{print $2}' a.txt | cut -d" " -f 2 | tail -2 | head -1


Last edited by Franklin52; 07-07-2011 at 07:08 AM.. Reason: Please use code tags for code and data samples, thank you
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Need grep regex to extract multiline text between two strings

I have a file conatining the below: --- 10.9.16.116: /tmp/5835113081224811756.jar: hash: e6df90d38fa86f0e289f73d79cd2cfd2a29954eb /tmp/4603745991442278706.jar: hash: e6df90d38fa86f0e289f73d79cd2cfd2a29954eb 10.9.14.126: /tmp/conf/extra/httpd-ssl.conf: hash:... (1 Reply)
Discussion started by: mohtashims
1 Replies

2. UNIX for Dummies Questions & Answers

Issue when using egrep to extract strings (too many strings)

Dear all, I have a data like below (n of rows=400,000) and I want to extract the rows with certain strings. I use code below. It works if there is not too many strings for example n of strings <5000. while I have 90,000 strings to extract. If I use the egrep code below, I will get error: ... (3 Replies)
Discussion started by: forevertl
3 Replies

3. Shell Programming and Scripting

Extract text between two strings

Hi, I have a text like these: ECHO "BEGGINING THE SHELL....." MV FILE1 > FILE2 UNIQ_ID=${1} PARTITION_1=`${PL}/Q${CON}.KSH "SELECT ....." PARTITION_2=`${PL}/Q${CON}.KSH "SELECT ........" ${PL}/Q${CON}.KSH "CREATE ...." IF .... ....... I would like to extract only text that only... (4 Replies)
Discussion started by: mierdatuti
4 Replies

4. Shell Programming and Scripting

Extract text between two strings

Hi I have something like this: EXAMPLE 1 CREATE UNIQUE INDEX "STRING_1"."STRING_2" ON "BOSNI_CAB_EVENTO" ("CD_EVENTO" , "CD_EJECUCION" ) PCTFREE 10 INITRANS 2 MAXTRANS 255 STORAGE(INITIAL 5242880 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT) TABLESPACE "DB1000_INDICES_512K"... (4 Replies)
Discussion started by: chrispaz81
4 Replies

5. UNIX for Advanced & Expert Users

bash/grep/awk/sed: How to extract every appearance of text between two specific strings

I have a text wich looks like this: clid=2 cid=6 client_database_id=35 client_nickname=Peter client_type=0|clid=3 cid=22 client_database_id=57 client_nickname=Paul client_type=0|clid=5 cid=22 client_database_id=7 client_nickname=Mary client_type=0|clid=6 cid=22 client_database_id=6... (3 Replies)
Discussion started by: Pioneer1976
3 Replies

6. Shell Programming and Scripting

AWK: How to extract text lines between two strings

Hi. I have a text test1.txt file like:Receipt Line1 Line2 Line3 End Receipt Line4 Line5 Line6 Canceled Receipt Line7 Line8 Line9 End (9 Replies)
Discussion started by: TQ3
9 Replies

7. UNIX for Dummies Questions & Answers

Using awk/sed to extract text between Strings

Dear Unix Gurus, I've got a data file with a few hundred lines (see truncated sample)... BEGIN_SCAN1 TASK_NAME=LA48 PDD Profiles PROGRAM=ArrayScan 1.00 21.220E+00 2.00 21.280E+00 END_DATA END_SCAN1 BEGIN_SCAN2 TASK_NAME=LA48 PDD Profiles 194.00 2.1870E+00 ... (5 Replies)
Discussion started by: tintin72
5 Replies

8. UNIX for Dummies Questions & Answers

extract text between two strings exclusive

Hi, I'm trying to retrieve text between two strings excluding the two strings. So for example I have the following input: type=friend username=phone1 secret=password host=dynamic dtmfmode=rfc2833 mailbox=9664 context=sip insecure=very canreinvite=no nat=yes realm=192.168.1.122... (3 Replies)
Discussion started by: the1armedcoder
3 Replies

9. Shell Programming and Scripting

using awk to extract text between two constant strings

Hi, I have a file from which i need to extract data between two constant strings. The data looks like this : Line 1 SUN> read db @cmpd unit 60 Line 2 Parameter: CMPD -> "C00071" Line 3 Line 4 SUN> generate Line 5 tabint>ERROR: (Variable data) The data i need to extract is... (11 Replies)
Discussion started by: mjoshi
11 Replies

10. Shell Programming and Scripting

using AWK how to extract text between two same strings

I have a file like: myfile.txt it is easy to learn awk and begin awk scripting and awk has got many features awk is a powerful text processing tool Now i want to get the text between first awk and immediate awk not the third awk . How to get it ? its urgent pls help me and file is unevenly... (2 Replies)
Discussion started by: santosh1234
2 Replies
Login or Register to Ask a Question