print all between patterns with special chars


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting print all between patterns with special chars
# 1  
Old 04-25-2012
[SOLVED] print all between patterns with special chars

Hi, I'm having trouble with awk print all characters between 2 patterns. I tried more then one solution found on this forum but with no success.
Probably my mistakes are due to the special characters "[" and "]"in the search patterns.

Well, have a log file like this:

logfile.txt

Code:
[0]abcdef[0]patt1[0] abcdef patt2[0]
abcdefabcdefabc[0]defabcde[0]fabcdef
abcdef abcdefabcdefabcdefabcdefabcdef patt1[0]patt1 I WANT READ THIS patt2[0]patt2 abcdefabcdefabcdefabcdefabcdef abcdefabcdefabcdefabcdefabcdef
abcdefabcdefabcdefabcdefabcdef
abcdef abcdefabcdefabcdefabcdefabcdef patt1[0]patt1 I WANT READ ALSO THIS patt2[0]patt2 abcdefabcdefabcdefabcdefabcdef abcdefabcdefabcdefabcdefabcdef
[0]abcdef[0]patt1[0] abcdef patt2[0]
abcdefabcdefabc[0]defabcde[0]fabcdef
[0]abcdef[0]patt1[0] abcdef patt2[0]
abcdefabcdefabc[0]defabcde[0]fabcdef
abcdef abcdefabcdefabcdefabcdefabcdef patt1[0]patt1 I WANT READ THIS TOO patt2[0]patt2 abcdefabcdefabcdefabcdefabcdef abcdefabcdefabcdefabcdefabcdef
abcdefabcdefabcdefabcdefabcdef
[0]abcdef[0]patt1[0] abcdef patt2[0]
abcdef abcdefabcdefabcdefabcdefabcdef patt1[0]patt1 I WANT READ AGAIN patt2[0]patt2 abcdefabcdefabcdefabcdefabcdef abcdefabcdefabcdefabcdefabcdef



I would like to print all chars between the patterns "patt1[0]patt1" and "patt2[0]patt2" so that my expected output should be like this:

Code:
I WANT READ THIS
I WANT READ ALSO THIS
I WANT READ THIS TOO 
I WANT READ AGAIN



I tried using "" and also \ before [ and ] but with no good results.

By the way, my final step should be to pipe this to a tail -f logfile.txt ore something else to have the above output in real time.
Tnx for your help Smilie

Last edited by ginolatino; 04-25-2012 at 07:05 AM..
# 2  
Old 04-25-2012
Could this help you ?
Code:
perl -nle 'print $1 if /patt1\[0\]patt1(.+?)patt2\[0\]patt2/' filename

This User Gave Thanks to pravin27 For This Post:
# 3  
Old 04-25-2012
Code:
 
/home/ravi>awk '/patt1\[0\]patt1/ && /patt2\[0\]patt2/' input_file | sed 's!.*patt1\[0\]patt1\(.*\)patt2\[0\]patt2.*!\1!'

This User Gave Thanks to panyam For This Post:
# 4  
Old 04-25-2012
did not expect so fast reply ..TNX A LOT
SmilieSmilieSmilieSmilieSmilieSmilieSmilieSmilieSmilieSmilie
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Shell script to split data with a delimiter having chars and special chars

Hi Team, I have a file a1.txt with data as follows. dfjakjf...asdfkasj</EnableQuotedIDs><SQL><SelectStatement modified='1' type='string'><! The delimiter string: <SelectStatement modified='1' type='string'><! dlm="<SelectStatement modified='1' type='string'><! The above command is... (7 Replies)
Discussion started by: kmanivan82
7 Replies

2. Shell Programming and Scripting

Find matched patterns and print them with other patterns not the whole line

Hi, I am trying to extract some patterns from a line. The input file is space delimited and i could not use column to get value after "IN" or "OUT" patterns as there could be multiple white spaces before the next digits that i need to print in the output file . I need to print 3 patterns in a... (3 Replies)
Discussion started by: redse171
3 Replies

3. UNIX for Dummies Questions & Answers

How to search for a string with special chars?

Hi guys, I am trying to find the following string in a file, but I always get pattern not found error, not sure what is missing here. Can you help please? I do a less to open the xrates.log and then do a /'="18"' in the file and tried various combinations to search the below string. String... (8 Replies)
Discussion started by: santokal
8 Replies

4. Shell Programming and Scripting

Find Special/Null/Control Chars and Print Line Numbers

Hi All, This might be a basic question... I need to write a script to find all/any Speacial/Null/Control Chars and Print Line Numbers from an input file. Output something like Null Characters in File Name at : Line Numbers Line = Print the line Control Characters in File Name at : Line... (2 Replies)
Discussion started by: Kevin Tivoli
2 Replies

5. Shell Programming and Scripting

All strings within two special chars

I have a file with multiple lines. From each line I want to get all strings that starts with '+' and ends with '/'. Then I want the strings to be separated by ' + ' Example input: +$A$/NOUN+At/NSUFF_FEM_PL+K/CASE_INDEF_ACC Sample output: $A$ + At + K (20 Replies)
Discussion started by: Viernes
20 Replies

6. UNIX for Dummies Questions & Answers

Strings with Special chars in IF condition

I was trying to run a code to check if a fax number is empty or not. for that, I've written the following code which is throwing an error. #!/bin/ksh fax= "999-999-9999" if ; then fax_no="000-000-0000" else fax_no=$fax fi echo $fax_no And I get the... (7 Replies)
Discussion started by: hooaamai
7 Replies

7. Shell Programming and Scripting

Special chars in sed variable

Hi, For years ive been using this script to do mass search & replaces on our websites. Its worked with all sorts of spaces, quotes, html or whatever with a little adjusting here and there. But I just cant get this pattern to work: #!/bin/bash OLDURL="document.write('<script... (2 Replies)
Discussion started by: mutex
2 Replies

8. Shell Programming and Scripting

special chars arrangement in code

here is my simple script to show process and owners except me: ps `-ef |grep xterm |grep -v aucar` | while read a1 a2 a3 a4 a5 a6 a7 a8 do echo KILL..\($a1\).. $a2 |more done how can I pass values from command "ps -ef |grep xterm|grep -v aucar" to ? because above command... (2 Replies)
Discussion started by: xramm
2 Replies

9. Shell Programming and Scripting

treating special chars

Hi, I need some advise on treating non printable chars over ascii value 126 Case 1 : On some fields in the text , I need to retiain then 'as-is' and load to a database.I understand it also depends on database codepage. but i just wanna know how do i ensure it do not change while loading... (1 Reply)
Discussion started by: braindrain
1 Replies

10. UNIX for Advanced & Expert Users

Supress special chars in vi

Hi, One of our application is producing log files. But if we open the log file in vi or less or view mode, it shows all the special characters in it. The 'cat' shows correctly but it shows only last page. If I do 'cat' <file_name> | more, then again it shows special characters. ... (1 Reply)
Discussion started by: divakarp
1 Replies
Login or Register to Ask a Question