Grep and Print


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Grep and Print
# 1  
Old 02-21-2013
Grep and Print

Hi ,

I have data in below pattern

05:00:13,184 WARN [15501-24] ContentTransferService - CTS:createContent - File Name:470208627 Total time taken(ms):5137
05:00:13,184 WARN [15501-23] ContentTransferService - CTS:createContentWithFolderPath(uploadDocument) - File Name:[COLOR="rgb(139, 0, 0)"]295918481 [/COLOR]User Id:xyz Total time taken:5804

I want the output like

470208627 -- 5137
295918481 -- 5804

Can you please help me with it ? I tried few grep and awk but couldn't get it .
# 2  
Old 02-21-2013
Code:
perl -lne '(/File Name:(\d+).*?time taken.*?:(\d+)/ || /File Name:.*?\](\d+).*?time taken:(\d+)/) && print "$1 -- $2"' file

This User Gave Thanks to balajesuri For This Post:
# 3  
Old 02-21-2013
Thanks for the reply.

It works fine with the File Name as number but if the file name is alphanumberic then it doesnt work.These data get missing from the result.

Code:
File Name:DLFE-300818427.pptx Total time taken(ms):3785


Last edited by Scott; 02-21-2013 at 07:49 AM.. Reason: Code tags
# 4  
Old 02-21-2013
Solution based on following assumption
  • all int have const length and all lines are in data.dat
Code:
for ln in `cat data.dat`
do
fin=`grep [0-9]{8} $ln`
lin=`grep[0-9]{4} $ln`
echo $fin----------$lin
done


Last edited by Scott; 02-21-2013 at 07:50 AM.. Reason: Code tags
# 5  
Old 02-21-2013
Hi ,

The command works fine
perl -lne '(/File NameSmilie\d+).*?time taken.*?Smilie\d+)/ || /File Name:.*?\](\d+).*?time takenSmilie\d+)/) && print "$1 -- $2"'

But if the name is alphanumberic (DLFE-192818716.pptx) it doesnt work . I tried with /w option but that terminates the filename .
# 6  
Old 02-21-2013
Code:
perl -lne '(/File Name:([\w.-]+?) .*?time taken.*?:(\d+)/ || /File Name:.*?\]([\w.-]+?) .*?time taken:(\d+)/) && print "$1 -- $2"' file

Hope the File Name doesn't have spaces in them :-)
 
Login or Register to Ask a Question

Previous Thread | Next Thread

8 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Grep for the string and then print the next 4 lines

RHEL 5.8 I have a text file like below. I want to grep for a string and then print the next 4 lines including the line with the string I grepped for For eg: I want grep for the string HANS and then print the next 4 lines including HANS $ cat someText.txt JOHN NATIONALITY:... (7 Replies)
Discussion started by: omega3
7 Replies

2. Shell Programming and Scripting

Grep syntax print after certain character

My current code is: user@ubuntu:~/Desktop$ grep -e "\(packaged by\)\|\(employee\)\|\(file name\)\|\(Total Data (MB) Read\)\|\(Begin Time\)" log.txt packaged by = Ron Mexico employee = Michael Vick file name = Mike_Vick_2011.bat Total Data (MB) Read: 11.82 Begin Time: 6/13/2011... (8 Replies)
Discussion started by: chipperuga
8 Replies

3. Shell Programming and Scripting

Print lines before and after..not grep -A

Hi I have this in my file 2011-04-18 15:32:11 system-alert-00012: UDP flood! From xxxxxx to yyyyyyyyyy, int ethernet0/2). Occurred 1 times. 2011-04-18 15:32:11 system-alert-00012: UDP flood! From xxxxxx to yyyyyyyyyy, int ethernet0/2). Occurred 1 times. 2011-04-18 15:32:11... (9 Replies)
Discussion started by: zorrox
9 Replies

4. UNIX for Dummies Questions & Answers

Grep & print

I just need to print value 12 digit number after the key *MI*. My big concern is the below lines are not fixed format or length so cant cut based on the position. XSA*00**00**XZ*DA-Paper*30*942411167****MI*010001990802~AEE XSA*00**00**ZZ*EA-aper*30*94169****MI*010001960802~SDRE*ER... (7 Replies)
Discussion started by: gunaah
7 Replies

5. Shell Programming and Scripting

MEM=`ps v $PPID| grep -i db2 | grep -v grep| awk '{ if ( $7 ~ " " ) { print 0 } else

Hi Guys, I need to set the value of $7 to zero in case $7 is NULL. I've tried the below command but doesn't work. Any ideas. thanks guys. MEM=`ps v $PPID| grep -i db2 | grep -v grep| awk '{ if ( $7 ~ " " ) { print 0 } else { print $7}}' ` Harby. (4 Replies)
Discussion started by: hariza
4 Replies

6. Shell Programming and Scripting

Print lines after grep

Hi all, I need help in following scenario. I have a file with about 10,000 lines. There are several lines which have word "START" (all upper case) in them. I want to grep line with word "START" and then do the following 1. Print the line number having word "START" 2. Print the next 11 lines. ... (4 Replies)
Discussion started by: jakSun8
4 Replies

7. Shell Programming and Scripting

using grep and print filename

Hi, I have a question on bash. Basically I would like to print a file name using bash. I am actually trying to grep a particular character in sequential files. I have alot files such that a.txt, b.txt,c.txt...etc. If I found a certain character, I would print that particular filename. I... (5 Replies)
Discussion started by: ahjiefreak
5 Replies

8. Shell Programming and Scripting

to grep and print their counts

suppose u have a file ACFCFACCACARCSHFARCVJVASTVAJFTVAJVGHBAJ another file A C F R then output shud be A= 9 C=7 F=3 R=2 Thanks (12 Replies)
Discussion started by: cdfd123
12 Replies
Login or Register to Ask a Question