Sponsored Content
Top Forums Shell Programming and Scripting Problem assigning a counter for particular pattern Post 302351570 by reddybs on Wednesday 9th of September 2009 03:38:45 AM
Old 09-09-2009
Problem assigning a counter for particular pattern

Hi,
I have a script that compares two files(which are updated dynamically by a daemon) and evaluate results from the comparision.
For the first line of comparision from the file1, i will grep some part of the line in file with file1 and set a counter for that particular comparison. So for each and every line there should be a counter variable assigned and set.

So now the first run of script ends... and the next run starts.
For the next run, the script may find some more patterns from file and will grep for that pattern in file1 and set a counter for the new patterns...., above process continues.

Here, I have a problem storing a counter variable for a particular pattern. If script matches the particular pattern on its next run, it should increment the counter assigned for that pattern - else it should leave the counter for that pattern as it is.

This is what i have tried:

Code:
#!/bin/bash
file="/home/reddybs/test/failures.log"
file1="/home/reddybs/test/failures.log1"
file3="/home/reddybs/test/pc.chk"
ff=0
while read LINE
do
 
         i=`echo $LINE | awk '{print $4,$5}'`
#echo $i
 
         grep -w "$i" $file1 >>/dev/null
 
         if [ `echo $?` -eq 0 ]
         then
                echo "matched"
#Please guide me to assign a counter for this particular pattern               
         ff=`expr $ff + 1`
                echo "$ff ,Matched count for $i" >>$file3
         else
                echo "Yet to implement"
         fi
 
done < $file

Struk in assiging/set a counter variable for the particluar pattern/match/comparision/loop.

Thanks in advance for all your time.....

Cheers,
Sai
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

counter / increment problem within echo stmt

Simple script trying to increment a counter within an echo statement never gets past 1 - PLEASE HELP! Thanks. ~~~~~~~~~~~ #!/bin/sh stepup() { STEP=`expr $STEP + 1` echo $STEP } # # Initialize variables # STEP=0 echo "Counter Value: `stepup`" echo "Counter Value:... (2 Replies)
Discussion started by: blaze
2 Replies

2. Shell Programming and Scripting

counter problem

Hi, I'm attempting to take the following input list and create an output file as shown below. I've monkeyed around for long enough. Can anyone help? NOTE: fs*** will be header and I want to get a count on NY**. fs200a NY7A fs200b NY7B NY7B NY7B fs200c NY7C NY7C NY7C NY7C... (2 Replies)
Discussion started by: jwholey
2 Replies

3. Shell Programming and Scripting

problem assigning values to variable

Date of Request: 20080514 10:37 Submitted By: JPCHIANG i want to get the value "JPCHIANG" only in read a file, however, when i do this: name=`"$line"|cut -d " " -f8` it display all the line and append 'not found' at the end of the statement the $line is actually a variable in a... (2 Replies)
Discussion started by: finalight
2 Replies

4. Shell Programming and Scripting

assigning counter to same keys in a file

Hi, I've a data file with similar keys coming in. I want to assign an incremental counter to those records and attach to a file for example File 10001 ABCD 10002 PQRS 10001 ABCD 10003 QWER 10001 ABCD 10002 PQRS 10004 POIU output as 10001 ABCD 1 10002 PQRS 1 10001 ABCD 2 10003... (3 Replies)
Discussion started by: rudoraj
3 Replies

5. UNIX for Dummies Questions & Answers

Problem assigning variables to arrays

Hi All, I have a problem assigning variables to script.I have a script in which i have a while loop now i have to assign some values obtained to an array which will be used later in the script.Can anyone help how to do that. At present my scrot looks like: co=0 pco=0 co=`cat /tmp/highcpu... (4 Replies)
Discussion started by: usha rao
4 Replies

6. Shell Programming and Scripting

problem in assigning variable

suppose in my script i have written a1=2 a2=4 read option # I directly want to see the value of a1 or a2 (i:e; 1 or2 )depending upon i/p given like a1 or a2 to option var.so what should i give .Suppose if I give a1 to option then how can I see the value. echo $$option --- doesn't work pls... (3 Replies)
Discussion started by: maitree
3 Replies

7. Shell Programming and Scripting

AWK counter problem

Hi I have a file like below ############################################ # ParentFolder Flag SubFolders Colateral 1 Source1/Checksum CVA 1 Source1/Checksum Flexing 1 VaR/Checksum Flexing 1 SVaR/Checksum FX 1 ... (5 Replies)
Discussion started by: manas_ranjan
5 Replies

8. Shell Programming and Scripting

[Solved] problem assigning value

Hi, This is the script that am trying to execute. a= sar 1 5 | grep ^A | awk '{print $5}' echo $a i am getting output. 99 i get a blank space for echo $a. Why is the value not getting assigned to a?? Thanks in Advance. How to use code tags (6 Replies)
Discussion started by: aksijain
6 Replies

9. Shell Programming and Scripting

problem with counter

i having a file xxxxxxxxxxxxxxx1234 ...........value can be change xxxxxxxxxxxxxxx1235 xxxxxxxxxxxxxxxx1236 . . . . xxxxxxxxxxxxxxxxx1300 ...........value can be change i want to cut last four characters of first line and last line and find the missing pattern. output should... (4 Replies)
Discussion started by: sagar_1986
4 Replies

10. UNIX for Dummies Questions & Answers

Assigning matched pattern within filename to variable

I am writing a bash script where I use two types of files that both contain a numerical pattern of the type 123.4567 (always groups of three and four digits separated by period) within their filenames. I need to assign the numerical patterns of these filenames to variables (inside a for loop),... (6 Replies)
Discussion started by: Mauve
6 Replies
GREP(1) 						      General Commands Manual							   GREP(1)

NAME
grep - search a file for lines containing a given pattern SYNOPSIS
grep [-elnsv] pattern [file] ... OPTIONS
-e -e pattern is the same as pattern -c Print a count of lines matched -i Ignore case -l Print file names, no lines -n Print line numbers -s Status only, no printed output -v Select lines that do not match EXAMPLES
grep mouse file # Find lines in file containing mouse grep [0-9] file # Print lines containing a digit DESCRIPTION
Grep searches one or more files (by default, stdin) and selects out all the lines that match the pattern. All the regular expressions accepted by ed and mined are allowed. In addition, + can be used instead of * to mean 1 or more occurrences, ? can be used to mean 0 or 1 occurrences, and | can be used between two regular expressions to mean either one of them. Parentheses can be used for grouping. If a match is found, exit status 0 is returned. If no match is found, exit status 1 is returned. If an error is detected, exit status 2 is returned. SEE ALSO
cgrep(1), fgrep(1), sed(1), awk(9). GREP(1)
All times are GMT -4. The time now is 07:34 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy