Compare value in the last occurrence for each id


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Compare value in the last occurrence for each id
# 8  
Old 03-11-2014
I made the changes in 2 places, did you try with the code which I posted in #6?
This User Gave Thanks to ahamed101 For This Post:
# 9  
Old 03-11-2014
Hello ahamed101,

Yes I did the changes in both sides and give empty value..
# 10  
Old 03-11-2014
I get the output though with the input you have given.
Check if this is correct. Which is your OS?

Code:
root@maximus-netpune-21:/tmp# awk '{
>        status=substr($0,91,2)
>        ind=substr($0,26,1);
>        split(substr($0, 11, 24-11), val,/\.0 /);
>        key[NR%2":"val[1]val[2]] = ind":"status
>      }
>      END{
>        for(i in key){
>          split(i, arr, /:/)
 >          split(key[i], brr, /:/)
>          if(!(brr[2] == 14 || brr[2] == 98)){
>            delete key[i]
>            continue
>          }
>          cnt[arr[2]]++
>       }
>       for(i in key){
>         split(i, arr, /:/)
>         split(key[i], brr, /:/)
>         print arr[2]" index "brr[1]" has "cnt[arr[2]]" times status "brr[2]
>       }
>     }' f | sort -k1,1n -u
2458520825 index 2 has 2 times status 14
2458720673 index 2 has 2 times status 14
2458720675 index 2 has 2 times status 14
2459320745 index 1 has 1 times status 98
2459320849 index 2 has 1 times status 14
2459720785 index 2 has 2 times status 14
2465120615 index 2 has 2 times status 14
2478121001 index 2 has 2 times status 14
2479921001 index 2 has 2 times status 14
2480320697 index 2 has 2 times status 14
2480320841 index 2 has 2 times status 14
2480520841 index 2 has 2 times status 14
2482920729 index 2 has 2 times status 14
2483321201 index 2 has 2 times status 14
2483521185 index 2 has 2 times status 14
2483521289 index 2 has 2 times status 14
2483521305 index 2 has 2 times status 14
2486920769 index 2 has 1 times status 98

This User Gave Thanks to ahamed101 For This Post:
# 11  
Old 03-11-2014
Dear ahamed101
yes it works, sorry for my mistake.
I didn't see
split(i, arr, /:/)I appreciate your help.. Thanks a lot
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Grep util last occurrence

I have file contents /tmp/x/abc.txt /home/bin/backup/sys/a.log I need this output: /tmp/x/ /home/bin/backup/sys/ Can somebody please help me out Please use CODE tags as required by forum rules! (3 Replies)
Discussion started by: jhonnyrip
3 Replies

2. Shell Programming and Scripting

sed print from last occurrence match until the end of last occurrence match

Hi, i have file file.txt with data like: START 03:11:30 a 03:11:40 b END START 03:13:30 eee 03:13:35 fff END jjjjjjjjjjjjjjjjjjjjj START 03:14:30 eee 03:15:30 fff END ggggggggggg iiiiiiiiiiiiiiiiiiiiiiiii I want the below output START (13 Replies)
Discussion started by: Jyotshna
13 Replies

3. Shell Programming and Scripting

Substitute first occurrence of keyword if occurrence between two other keywords

Assume a string that contains one or multiple occurrences of three different keywords (abbreviated as "kw"). I would like to replace kw2 with some other string, say "qux". Specifically, I would like to replace that occurrence of kw2 that is the first one that is preceded by kw1 somewhere in the... (4 Replies)
Discussion started by: M Gruenstaeudl
4 Replies

4. UNIX for Dummies Questions & Answers

Sed, last occurrence

How to find last occurrence of a keyword in a file using sed. (4 Replies)
Discussion started by: nexional
4 Replies

5. Shell Programming and Scripting

number of occurrence

: i need a bash script to convert the displayed output 12 14 15 12 15 13 to 12 * 2 ,13 * 1,14*1,15*1 Thanks, nevil (2 Replies)
Discussion started by: nevil
2 Replies

6. UNIX for Dummies Questions & Answers

Breaking up at the second occurrence

hi, My input is: 123 1234|123|123|123 123|123|456 123|123|12 12 Expected output is: 123 1234|123 123|123 123|123 456 123|123 12 (1 Reply)
Discussion started by: pandeesh
1 Replies

7. Shell Programming and Scripting

Last occurrence of code between two tags

Hi, I am new to linux and have a challenge while I am debugging my application logs n linux boxes. our log file xxx.log will have different responses coming in its way while an user logs in. Each response might be of 2000 lines or more. Many users do login at a time and our log file goes big... (24 Replies)
Discussion started by: nariwithu
24 Replies

8. Shell Programming and Scripting

count a occurrence

I am looking to get a output of "2 apple found" from the awk command below. black:34104 tomonorisoejima$ cat tomo apple apple black:34104 tomonorisoejima$ awk '/apple/ {count++}END{print count " apple found"}' tomo 1 apple found black:34104 tomonorisoejima$ (5 Replies)
Discussion started by: soemac
5 Replies

9. Shell Programming and Scripting

Replace second occurrence only

HPUX /bin/sh (posix) I have a file as such cat dog mouse deer elk rabbit mouse rat pig I would like to replace the second occurrence of mouse in this file with mouse2. The rest of the file has to stay exactly as is. I'm not sure exactly where mouse might be (could be first,second,third... (5 Replies)
Discussion started by: lyoncc
5 Replies

10. UNIX for Dummies Questions & Answers

awk + last occurrence

Hi, I'm attempting to search, using awk, a pattern range in a file. Something like: >awk '/first bit of text.../,/...last bit of text/' file Is it possible to print only the last (or first) occurrence of the pattern range this way? Thanks for any suggestions. Al (2 Replies)
Discussion started by: agibbs
2 Replies
Login or Register to Ask a Question