grep? awk? sed? I don't know


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting grep? awk? sed? I don't know
# 1  
Old 03-03-2010
grep? awk? sed? I don't know

Hi everyone!

I have a file like this
Quote:
Medium label : R00034
Location : [RF-AUTOLOADER448-1: 6]
Medium Owner : so-rf5.inetrf
Status : Good
Blocks used [KB] : 310980608
Blocks total [KB] : 419430400
Usable space [KB] : 419430400
Number of writes : 2
Number of overwrites : 29
Number of errors : 0
Medium initialized : Thu Nov 9 18:31:29 2006
Last write : Sun Jan 10 01:06:04 2010
Last access : Mon Feb 15 18:27:04 2010
Last overwrite : Sun Jan 10 01:02:43 2010
Protected : None
Write-protected : No


Medium identifier : 0a347883:485109e2:10e3:0001

Medium label : R00061
Location : [RF-AUTOLOADER448-1: 1]
Medium Owner : so-rf5.inetrf
Status : Good
Blocks used [KB] : 113914688
Blocks total [KB] : 419430400
Usable space [KB] : 419430400
Number of writes : 2
Number of overwrites : 21
Number of errors : 0
Medium initialized : Thu Jun 12 13:34:58 2008
Last write : Thu Jan 14 23:08:36 2010
Last access : Mon Feb 22 09:06:01 2010
Last overwrite : Thu Jan 14 23:07:37 2010
Protected : None
Write-protected : No


Medium identifier : 0a347883:45597fda:4677:0001

Medium label : R00037
Location : [RF-AUTOLOADER448-1: 5]
Medium Owner : so-rf5.inetrf
Status : Good
Blocks used [KB] : 113839552
Blocks total [KB] : 419430400
Usable space [KB] : 419430400
Number of writes : 2
Number of overwrites : 3
Number of errors : 0
Medium initialized : Tue Nov 14 09:35:38 2006
Last write : Wed Jan 6 23:28:50 2010
Last access : Mon Feb 15 18:30:28 2010
Last overwrite : Wed Jan 6 23:27:46 2010
Protected : None
Write-protected : No
And I would like to find the Medium label when the value "last write" is "Jan 14" (it's could be another value like "jan 6")
I really don't know what way to use to solve this problem...

Thanks!

Last edited by Castelior; 03-03-2010 at 10:41 AM..
# 2  
Old 03-03-2010
Code:
pattern="Jan 14"
awk -v pattern=$pattern ' /^Medium label/ {value=$0}
        /^Last write/ && $0 ~ pattern { print} ' somefile > newfile

# 3  
Old 03-03-2010
jim mcnamara solution tweaked as per OP requirement
Code:
awk -v pattern="$pattern" ' /^Medium label/ {value=$NF}
        /^Last write/ && $0 ~ pattern { print value} ' somefile > newfile

# 4  
Old 03-03-2010
Or:

Code:
awk '/Last write : Thu Jan 14/{print$4}' RS= infile

Could be easily adjusted to accept parameters.
# 5  
Old 03-03-2010
Thanks that's great!!
# 6  
Old 03-03-2010
Code:
sed -n -e "/Medium label/{h;}"  -e "/Last write.*Jan 14/{g;s/Medium label : //p;}" file

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Grep/awk/sed help

got a file as y.txt 1 abc,def,ghj 2 defj,abc.kdm,ijk 3 lmn,cbk,mno 4 tmp,tmop,abc,pkl 5 pri,chk,cbk,lmo 6 def,cbk.pro,abc.kdm i want to search in the above file the key word like abc looking for two outcomes by passing the parameter value as abc into function and the two outocmes are... (6 Replies)
Discussion started by: silgun
6 Replies

2. UNIX for Dummies Questions & Answers

grep/awk/sed?

Thread1 { x = 2 y = 10485 } Thread2 { x = 16 y = 1048 } Thread3 { x = 1 y = 1049 } Thread4 { x = 4 y = 1047 z = 500 } Suppose the above is a piece of code. I need to automate and verify that the value of x under Thread1's 2. There are several... (3 Replies)
Discussion started by: foxtron
3 Replies

3. Shell Programming and Scripting

help using sed/awk/grep

thanks for your reply. but i'm not quite sure what your code is doing. i may be using it wrong but i'm not getting what i'm supposed to get. could you please elaborate? thanks again, (6 Replies)
Discussion started by: kratos.
6 Replies

4. Shell Programming and Scripting

grep or awk or sed not sure which to use here

Hi All, I have a huge file, I need to two things from this file. I need to know the IP address or the hostname and second thing is the date&time. The file looks like this and I need to get my data from this... Trying... Connected to 204.109.172.117. Escape character is '^]'. Fri... (4 Replies)
Discussion started by: samnyc
4 Replies

5. UNIX for Dummies Questions & Answers

awk grep sed or something better

Hello all, Can anyone help with the following? :) I have file1 with 150,000 words in a list and file2 with 148,000 words in a list - all of which are in file1. I want to create a new file with the words that DO NOT match (i.e of 2000 words). I have done this very simple command , which is... (1 Reply)
Discussion started by: dr_sabz
1 Replies

6. UNIX for Dummies Questions & Answers

How could i get this by sed or grep or awk ????

------------------------------------------------------------------ Ex of Warning messgae,(Many similar lines occure for Both Test and Test1) -WARNING:Below Field not implemented in file File name: /home/test/ new/file1, msg buffer is: :Test:000948 ... (1 Reply)
Discussion started by: prsam
1 Replies

7. UNIX for Dummies Questions & Answers

Grep Sed or Awk?

I have two .txt files one called good.txt and the other one is called bad.txt. Both contain email addresses in the following format: john@john.com bob@bob.com sarah@sarah.com Basically, I want to scrub good.txt against bad.txt and save the resulting output in scrubbed.txt meaning that if... (2 Replies)
Discussion started by: holyearth
2 Replies

8. UNIX for Dummies Questions & Answers

Awk, Sed and Grep

Hello. I am an older newbie trying to learn Unix. I have a task to perform and it entails counting lines of code. Currently, I am pointing to the directory where the files are contained and performing a 'find' on the file extensions (cpp, c, html, java, etc.) and piping that info with a 'wc -l'.... (2 Replies)
Discussion started by: mastachef
2 Replies

9. Shell Programming and Scripting

Sed | Awk | Grep

Can someone help me in understanding when to use SED, AWK and GREP (3 Replies)
Discussion started by: kn.naresh
3 Replies

10. Shell Programming and Scripting

need help!!!awk,grep,sed

hi all by using cat /etc/passwd I've got these output. ajh1ect:x:839:501:Anthony:/home/ajh1ect:/bin/bash mjb1ect:x:840:501:Michael:/home/mjb1ect:/bin/bash mv3ect:x:841:501:Marian:/home/mv3ect:/bin/bash now I want to see just the user ID and group ID. so what is the code will be with... (2 Replies)
Discussion started by: nokia1100
2 Replies
Login or Register to Ask a Question