Sponsored Content
Top Forums UNIX for Advanced & Expert Users Print the line containing the maximum value in a column Post 97887 by gauravgoel on Friday 3rd of February 2006 06:45:55 AM
Old 02-03-2006
Hi KingKong,

The reason is that the value of max variable is not getting changed. Even I don't know why.

Try with the following modified script and tell me what happened with this, even I am eager to know why this is happening.

Quote:
set -x
max=0
cat file.txt|while read LINE
do
fir=`echo $LINE|awk '{print $2}'`
sec=`echo $LINE|awk '{print $3}'`
if [ $fir -gt $max ]; then
typeset max=$fir
fi
if [ $sec -gt $max ];then
typeset max=$sec
fi
done

grep $max file.txt
I am sure that this will work,

Cheers,
Gaurav
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

print line before column 1 transitions

I have a space delimited text file with thousands of lines, COLA.TXT that looks for example like this: AA 123 456 789 AA 987 987 987 AA 987 988 888 AA 999 999 999 B 123 456 789 B 111 111 111 CCD 123 456 789 CCD 321 654 987 CCD EE 11 11 EE EE EE 00 00 00 EE Anyway, I need a script... (2 Replies)
Discussion started by: ajp7701
2 Replies

2. Shell Programming and Scripting

How to print last column of line

Hello folks, Please guide me i have a file file.txt that have below text. PETER JOHN peter@example.com John Col john@example.com Sara Paul sara@example.com I just want to extract only email address list. (5 Replies)
Discussion started by: learnbash
5 Replies

3. Shell Programming and Scripting

read file line by line print column wise

I have a .csv file which is seperated with (;) inputfile --------- ZZZZ;AAAA;BBB;CCCC;DDD;EEE; YYYY;BBBB;CCC;DDDD;EEE;FFF; ... ... reading file line by line till end of file. while reading each line output format should be . i need to print only specific columns let say 5th... (2 Replies)
Discussion started by: rocking77
2 Replies

4. Shell Programming and Scripting

for each different entry in column 1 extract maximum values from column 2 in unix/awk

Hello, I have 2 columns (1st column has multiple entries but the corresponding values in the column 2 may be the same or different.) however I want to extract unique values for each entry in column 1 by assigning the max value from column 2 SDF4 -0.211654 SDF4 0.978068 ... (1 Reply)
Discussion started by: Diya123
1 Replies

5. Shell Programming and Scripting

awk Print New Column For Every Two Lines and Match On Multiple Column Values to print another column

Hi, My input files is like this axis1 0 1 10 axis2 0 1 5 axis1 1 2 -4 axis2 2 3 -3 axis1 3 4 5 axis2 3 4 -1 axis1 4 5 -6 axis2 4 5 1 Now, these are my following tasks 1. Print a first column for every two rows that has the same value followed by a string. 2. Match on the... (3 Replies)
Discussion started by: jacobs.smith
3 Replies

6. Shell Programming and Scripting

Get maximum per column from CSV file, based on date column

Hello everyone, I am using ksh on Solaris 10 and I'm gathering data in a CSV file that looks like this: 20170628-23:25:01,1,0,0,1,1,1,1,55,55,1 20170628-23:30:01,1,0,0,1,1,1,1,56,56,1 20170628-23:35:00,1,0,0,1,1,2,1,57,57,2 20170628-23:40:00,1,0,0,1,1,1,1,58,58,2... (6 Replies)
Discussion started by: ejianu
6 Replies

7. Shell Programming and Scripting

Print next line beside preceding line on column match

Hi, I have some data like below: John 254 Chris 254 Matt 123 Abe 123 Raj 487 Moh 487 How can i print it using awk to have: 254 John,Chris 123 Matt,Abe 487 Raj,Moh Thanks. (4 Replies)
Discussion started by: james2009
4 Replies

8. Shell Programming and Scripting

Print whole line with highest value from one column

Hi, I have a little issue right now. I have a file with 4 columns test0000002,10030010330,c_,218 test0000002,10030010330,d_,202 test0000002,10030010330,b_,193 test0000002,10030010020,c_,178 test0000002,10030010020,b_,170 test0000002,10030010330,a_,166 test0000002,10030010020,a_,151... (3 Replies)
Discussion started by: Ebk
3 Replies

9. Shell Programming and Scripting

If the 1th column of file f1 and file f2 is the same, then export those line with maximum string of

please help to write a awk command-line programs to achieve the following functions: Thank in advance. Requeset Description: compare two files f1 and f2, export to file f3: 1 Delete duplicate rows of in file f1 and file f2 2 If the 1th column of file f1 and file f2 is the same, then export... (1 Reply)
Discussion started by: weichanghe2000
1 Replies

10. Shell Programming and Scripting

awk to find maximum and minimum from column and store in other column

Need your support for below. Please help to get required output If column 5 is INV then only consider column1 and take out duplicates/identical rows/values from column1 and then put minimum value of column6 in column7 and put maximum value in column 8 and then need to do subtract values of... (7 Replies)
Discussion started by: as7951
7 Replies
Progress(3)						User Contributed Perl Documentation					       Progress(3)

NAME
Time::Progress - Elapsed and estimated finish time reporting. SYNOPSIS
use Time::Progress; # autoflush to get working $| = 1; # get new `timer' my $p = new Time::Progress; # restart and report progress $p->restart; sleep 5; # or do some work here print $p->report( "done %p elapsed: %L (%l sec), ETA %E (%e sec) ", 50 ); # set min and max values $p->attr( min => 2, max => 20 ); # restart `timer' $p->restart; my $c; for( $c = 2; $c <= 20; $c++ ) { # print progress bar and percentage done print $p->report( "eta: %E min, %40b %p ", $c ); sleep 1; # work... } # stop timer $p->stop; # report times print $p->elapsed_str; DESCRIPTION
Shortest time interval that can be measured is 1 second. The available methods are: new my $p = new Time::Progress; Returns new object of Time::Progress class and starts the timer. It also sets min and max values to 0 and 100, so the next report calls will default to percents range. restart restarts the timer and clears the stop mark. optionally restart() may act also as attr() for setting attributes: $p->restart( min => 1, max => 5 ); is the same as: $p->attr( min => 1, max => 5 ); $p->restart(); If you need to count things, you can set just 'max' attribute since 'min' is already set to 0 when object is constructed by new(): $p->restart( max => 42 ); stop Sets the stop mark. this is only useful if you do some work, then finish, then do some work that shouldn't be timed and finally report. Something like: $p->restart; # do some work here... $p->stop; # do some post-work here print $p->report; # `post-work' will not be timed Stop is useless if you want to report time as soon as work is finished like: $p->restart; # do some work here... print $p->report; continue Clears the stop mark. (mostly useless, perhaps you need to restart?) attr Sets and returns internal values for attributes. Available attributes are: min This is the min value of the items that will follow (used to calculate estimated finish time) max This is the max value of all items in the even (also used to calculate estimated finish time) format This is the default report format. It is used if report is called without parameters. attr returns array of the set attributes: my ( $new_min, $new_max ) = $p->attr( min => 1, max => 5 ); If you want just to get values use undef: my $old_format = $p->attr( format => undef ); This way of handling attributes is a bit heavy but saves a lot of attribute handling functions. attr will complain if you pass odd number of parameters. report report is the most complex method in this package. :) expected arguments are: $p->report( format, [current_item] ); format is string that will be used for the result string. Recognized special sequences are: %l elapsed seconds %L elapsed time in minutes in format MM:SS %e remaining seconds %E remaining time in minutes in format MM:SS %p percentage done in format PPP.P% %f estimated finish time in format returned by localtime() %b %B progress bar which looks like: ##############...................... %b takes optional width: %40b -- 40-chars wide bar %9b -- 9-chars wide bar %b -- 79-chars wide bar (default) Parameters can be ommited and then default format set with attr will be used. Sequences 'L', 'l', 'E' and 'e' can have width also: %10e %5l ... Estimate time calculations can be used only if min and max values are set (see attr method) and current item is passed to report! if you want to use the default format but still have estimates use it like this: $p->format( undef, 45 ); If you don't give current item (step) or didn't set proper min/max value then all estimate sequences will have value `n/a'. You can freely mix reports during the same event. elapsed estimate helpers -- return elapsed/estimate seconds. elapsed_str estimate_str helpers -- return elapsed/estimated string in format: "elapsed time is MM:SS min. " "remaining time is MM:SS min. " all helpers need one argument--current item. FORMAT EXAMPLES
# $c is current element (step) reached # for the examples: min = 0, max = 100, $c = 33.3 print $p->report( "done %p elapsed: %L (%l sec), ETA %E (%e sec) ", $c ); # prints: # done 33.3% elapsed time 0:05 (5 sec), ETA 0:07 (7 sec) print $p->report( "%45b %p ", $c ); # prints: # ###############.............................. 33.3% print $p->report( "done %p ETA %f ", $c ); # prints: # done 33.3% ETA Sun Oct 21 16:50:57 2001 AUTHOR
Vladi Belperchinov-Shabanski "Cade" <cade@biscom.net> <cade@datamax.bg> <cade@cpan.org> http://cade.datamax.bg perl v5.16.2 2010-09-10 Progress(3)
All times are GMT -4. The time now is 09:04 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy