Find the numeric value in a string and then check the max. value


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Find the numeric value in a string and then check the max. value
# 1  
Old 02-28-2013
Find the numeric value in a string and then check the max. value

hi,

i have a string
"[10/2/08 6:19:55:834 EDT] 00000069 ThreadMonitor W WSVR0606W: Thread "WebContainer : 43|null" (00000069) was previously rep
orted to be hung but has completed. It was active for approximately 47533430 milliseconds. There is/are 43 thread(s) in tot
al in the server that still may be hung."

and i want to find "There is/are 43", i am using the following command for this:
Code:
grep 'There is/are' hung.txt | cut -c219-234

there may have multiple values for the above string, so i need to check the max number out of this string. my initial approach is:
Code:
grep 'There is/are' hung.txt | cut -c230-234 | tr -dc '[0-9]'


i am only cutting the numeric values but all the values are printing into a single line. plz help me with this or if there is another way to do this????

thanks in advance

Last edited by Franklin52; 02-28-2013 at 10:41 AM.. Reason: Please use code tags for data and code samples
# 2  
Old 02-28-2013
Try sth like this...

Code:
awk -F "is/are" '{split($2,P," ");a=a>P[1]?a:P[1]}END{print a}' file

# 3  
Old 02-28-2013
Code:
bash-3.2$ awk -F "is/are" '{split($2,P," ");a=a>P[1]?a:P[1]}END{print a}' hung.txt
awk: syntax error near line 1
awk: bailing out near line 1


i tried this but it is giving above error..

Last edited by Franklin52; 02-28-2013 at 10:41 AM.. Reason: Code tags
# 4  
Old 02-28-2013
Use /usr/xpg4/bin/awk or nawk on Solaris.
# 5  
Old 02-28-2013
here is what i did for the above issue:
Code:
grep 'There is/are' hung.txt | cut -c231-233 | grep '[0-9]'|sed 's/^[ \t]*//;s/[ \t]*$//'>max.txt

first i tried to cut the numberic part of a string value and then store it into the text file and then to get the max value i tried following command and its working now..
Code:
awk '$0>x{x=$0};END{print x}' max.txt


Last edited by Franklin52; 02-28-2013 at 10:41 AM.. Reason: Please use code tags for data and code samples
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Check whether input is numeric

Hello there, find below for my code first: $pdp_asaba=`cat /tmp/temp_total | grep asaba | sed 's/*//g'` if ]] then pdp_asaba=0 fi $pdp_abuja=`cat /tmp/temp_total | grep abuja | sed 's/*//g'` if ]] then pdp_abuja=0 fi $pdp_ojota=`cat /tmp/temp_total | grep ojota | sed 's/*//g'` if ... (3 Replies)
Discussion started by: infinitydon
3 Replies

2. Shell Programming and Scripting

check if a string is numeric

I checked all the previous threads related to this and tried this. My input is all numbers or decimals greater than zero everytime. I want to check the same in the korn shell script. Just validate the string to be numeric. This is what I am doing. var="12345" if ) -o "$var" !=... (14 Replies)
Discussion started by: megha2525
14 Replies

3. Shell Programming and Scripting

How to check for a Numeric Value?

Using shell, I have a variable, how can I check that variable for a numeric value such as "41.0"? My program needs to do one things if the numeric value is found, and another if something else such as a string of letter is found. is there a specific character that denotes a numeral? The... (2 Replies)
Discussion started by: chagan02
2 Replies

4. UNIX for Dummies Questions & Answers

Find and Replace random numeric value with non-numeric value

Can someone tell me how to change the first column in a very large 17k line file from a random 10 digit numeric value to a non numeric value. The format of lines in the file is: 1702938475,SNU022,201004 the first 10 numbers always begin with 170 (6 Replies)
Discussion started by: Bahf1s
6 Replies

5. Shell Programming and Scripting

Need to find a string, check the next line, and if it matches certain criteria, replace it with a s

Hey Fellas. I am new to scripting. I have searched through the forums and found a lot of good info, but I can't seem to get any of it to work together. I am trying to find a particular sting in a file, and if the next string matches certain criteria, replace it with a string from a csv... (6 Replies)
Discussion started by: midniteslice
6 Replies

6. Shell Programming and Scripting

Check for Numeric output in Perl

Hi All, I would like to convert my below csh script to Perl. Can any expert help ? # To check for numeric input set tested1 = `echo "$tested"| awk '/^+$/'`; # To remove un-neccessary zeros set tested2 = `echo "$tested"|awk '{print $0+0}'`; (3 Replies)
Discussion started by: Raynon
3 Replies

7. Programming

check the given string is numeric or not.

Hi, how to check the given string is numeric or not , without converting ( using strtol...). for ex: if string is C01 - non-numeric data if string is 001 - numeric data TIA (11 Replies)
Discussion started by: knowledge_gain
11 Replies

8. Shell Programming and Scripting

check whether it is a non-numeric character

Below is the abstract of the script which is working fine. if ] then error_process "Invalid month format." return 1 fi I am doing validation for month and it errors if the value is > 12 or < 0. In addition, I want to add another condition to error if it... (2 Replies)
Discussion started by: sony_dada
2 Replies

9. Shell Programming and Scripting

to check variable if its non numeric

if test $b -ne then echo "\n\n\n\tPassword reset has been done successfully" else echo "\n\n\n\tAn error occurred" fi i want to check whether $b is non-numeric so how to do that? (3 Replies)
Discussion started by: sachin.gangadha
3 Replies

10. Shell Programming and Scripting

Check for numeric inputs

Hi All, How do i modify the below script such that if the input is numeric, it will give the numeric digit, else it will ouput "0" echo "xxx" | awk '/^+$/' (6 Replies)
Discussion started by: Raynon
6 Replies
Login or Register to Ask a Question