Retrieve message from file


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Retrieve message from file
# 1  
Old 02-02-2007
Retrieve message from file

Hey all, I have this file which contains a lot of messages in format like

[2/2/07 13:23:00] This is my message!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!Check This!
[2/2/07 13:23:10] This is my second message!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!
[2/2/07 13:24:48] This is my third message!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!

when I do "grep" on this file using "2/2/07 13:23", it returned

[2/2/07 13:23:00] This is my message!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
[2/2/07 13:23:10] This is my second message!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

but in fact I want

[2/2/07 13:23:00] This is my message!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!Check This!
[2/2/07 13:23:10] This is my second message!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!

since these messages span over several lines, could anyone tell me how to achieve what I need? Thank you so much!
# 2  
Old 02-02-2007
I assume that your message start with [ and span over multiple lines
Code:
awk ' /2\/2\/07 13:23/ { print ; getline ;while( match( $0 , "^[^\[]" ) ||  match( $0 ,"2\/2\/07 13:23") ) { print ; getline; } } ' file

# 3  
Old 02-02-2007
Anbu,

Can we do this using FS and RS in awk.
# 4  
Old 02-02-2007
Quote:
Originally Posted by Krrishv
Anbu,

Can we do this using FS and RS in awk.
This will work if [ is not anywhere other than the start of message
Code:
awk -v RS="[" ' /2\/2\/07 13:23/  { print "["$0 } ' file

# 5  
Old 02-02-2007
And add this to adjust the ORS:

Code:
awk -v RS="[" -v ORS= '/2\/2\/07 13:23/{print RS$0}' infile

Or with sed:

Code:
sed -n '/\[2\/2\/07 13:23/,/\[2\/2\/07 13:23/{N;p;}' infile

# 6  
Old 02-02-2007
Thanks & great radoulov..it was perfect.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Grep: Retrieve two strings from one file to find them anyone on line in another file

I am having trouble matching *two* strings from one file anywhere in a line of a second file, and could use some help getting this figured out. My preference would be to use grep for this because I would like to take advantage of its -A option. The latter is due to the fact that I would like both... (2 Replies)
Discussion started by: jvoot
2 Replies

2. UNIX for Dummies Questions & Answers

Hot to retrieve *.sql file names which we refer in .sh file.

Hi Guys, How to retrieve/get *.sql file names which we refer in all *.sh files. Can any one help me on this. Thanks, Kolipaka (3 Replies)
Discussion started by: lakshmanrk811
3 Replies

3. Shell Programming and Scripting

Retrieve old file in Solaris 10

Hello guys, I mistakely updated a file on Solaris 10. Any idea on how can I get the older version of file(File before being updated) back? Note: I do not have root access & have logged in as a user on the system. Thanks in advance, -Nithin. (3 Replies)
Discussion started by: bsnithin
3 Replies

4. Shell Programming and Scripting

retrieve string from file

hi, I have write a code to retrive data from each line of a file: sed -e '/^#/d' file.csv | awk '{ printf "TEST,%s:AUX,%s;\n", $0, "'A'"}' > pippo.txt where the input file.csv was like this: 1234 2345 2334 3344 and the output of my code is a file with: TEST,1234:AUX,A;... (7 Replies)
Discussion started by: fafo77
7 Replies

5. UNIX for Advanced & Expert Users

retrieve the file.

How will retrieve for a particular months file in UNIX say for example from January to February 2008. (1 Reply)
Discussion started by: rajesh08
1 Replies

6. Shell Programming and Scripting

how to retrieve base name of the file

I have a file name stored in a variable. A=/bb/data/f233pdb How can I retrive the base name (f233pdb) and the path (/bb/data/) and assign them to two new variables, so the result will look like this B=f233pdb C=/bb/data/ Thansk a lot for any help -A (8 Replies)
Discussion started by: aoussenko
8 Replies

7. Shell Programming and Scripting

retrieve value from a file

hi i have a cfg file,it contains lpdma520.dev.ipc.us.aexp.com=SUBMCORE.REQUEST.FT lpdma521.dev.ipc.us.aexp.com=SUBMCORE.REQUEST.FTREQ lpdma522.dev.ipc.us.aexp.com=SUBMITSECUREFILEFLOW i am retrieving the values using the function RetrieveCfgvalue() { CFG_VALUE=`grep "$2="... (1 Reply)
Discussion started by: satish@123
1 Replies

8. UNIX for Dummies Questions & Answers

how to retrieve a particular character from a file?

hi, how to retrieve a particular character from a file? (1 Reply)
Discussion started by: singalla
1 Replies

9. UNIX for Dummies Questions & Answers

How to retrieve a particular line from a file

Hi, I want to retrieve a particular line from a file and print its content to a file. Can you suggest how to do it in UNIX ?. Rgds vinayap (2 Replies)
Discussion started by: vinayap
2 Replies

10. UNIX for Dummies Questions & Answers

retrieve timestamp associated with a file

Hi All, I am involved in a Datawarehousing project where my data files(ASCII text) are loaded on a Unix directory. When I do a Ls -l in Unix prompt i get a file listing along with the timestamp when these files were created/put on the server. I need to retrieve the timestamp associated with each... (2 Replies)
Discussion started by: 2nilotpal
2 Replies
Login or Register to Ask a Question