Sponsored Content
Top Forums Shell Programming and Scripting Finding Max value from an array Post 302340094 by kshji on Sunday 2nd of August 2009 02:00:52 PM
Old 08-02-2009
Here is solution for you, little fix your 1st script. No need to echo array, use it. You can test values or give the list for sort and then take so many value as you like.
Code:
#!/bin/ksh
#!/bin/bash

array=(0338 0337 0339 0340 0401 0402 0403)
for i in ${array[*]}
do
        echo "$i"
done | sort -nr | head -2

Or you can put sorted list to the array and take so many values as you like:
Code:
# set array using array=( list of values )
# make max
max=(
$(for i in ${array[*]}
do
        echo "$i"
done | sort -nr ) 
)
echo "1st: ${max[0]}" 
echo "2nd: ${max[1]}"
echo "3th: ${max[2]}"



---------- Post updated at 08:56 PM ---------- Previous update was at 08:32 PM ----------

Using file:
Code:
array=( $(<somefile ) )

max=(
$(for i in ${array[*]}
do
        echo "$i"
done | sort -nr )
)
echo "1. ${max[0]}"
echo "2. ${max[1]}"

Or using sort and two first lines:
Code:
cnt=1
sort -nr somefile | while read line
do
        (( cnt  > 2 )) && break
        echo "$cnt. $line"
        (( cnt+=1))
done

Or ...

---------- Post updated at 09:00 PM ---------- Previous update was at 08:56 PM ----------

Using sort + awk
Code:
sort -nr somefile | awk 'NR <= 2 { print NR ".",$1 }'

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Finding max value

My code below is supposed to find which company had the most business and then print the appropriate fields from another file which are the companies ID number and name. I can loop through awk and display all the total amount of business for each company but I need help in only printing out the... (1 Reply)
Discussion started by: Enigma23
1 Replies

2. UNIX for Advanced & Expert Users

MAX SIZE ARRAY Can Hold it

Hi, Do anyone know what's the max size of array (in awk) can be store before hit any memory issue. Regards (3 Replies)
Discussion started by: epall
3 Replies

3. Shell Programming and Scripting

Help in finding the max and min position

Hi, I have this input file called ttbitnres (which is catenated and sorted):- 8 0.4444 213 10 0.5555 342 11 0.5555 321 12 0.5555 231 13 0.4444 400 My code is at :- #!/bin/bash echo -e Version "\t" Number of Pass "\t" Number of Fail "\t" Rank Position "\t"Min "\t" Max... (1 Reply)
Discussion started by: ahjiefreak
1 Replies

4. Shell Programming and Scripting

Max amount of awk array indices

Does anyone know what the max amount of indices you can store in a awk array? (0 Replies)
Discussion started by: timj123
0 Replies

5. HP-UX

max limit in in setting array

hi, iam getting error when i assign a variable to an array of more that 315 character in length set -A array <variable> <variable> value is 000001 000002 and up to 000045 it is giving error as "The specified subscript cannot be greater than 1024." can any one help me to solve this (2 Replies)
Discussion started by: gomathi
2 Replies

6. Shell Programming and Scripting

finding max size

Hi I have a list of 2000 records with multiple entries and I want to get the max size for each entry ABC 1 ABC 2 ABC 3 ABC 4 DEF 1 DEF 2 DEF 2 DEF 2 DEF 2 ... (9 Replies)
Discussion started by: Diya123
9 Replies

7. Shell Programming and Scripting

Finding max number in filename and opening it

Hi, I have files named as energy.dat.1 energy.dat.2 energy.dat.3 ... energy.dat.2342 I would like to find the file with maximum number in the filename (ex. energy.dat.2342) and open it. Would you please share your expertize in writing the script? Thanks in advance. (8 Replies)
Discussion started by: rpd25
8 Replies

8. Shell Programming and Scripting

awk, max value, array, row

Hello: I want to print out the entire row with max value in column 3 based on column 2. Input file is millions rows. test.dat: Contig1 lcl|1DL 111 155 265 27 Contig2 lcl|1DS 100 73 172 100 Contig3 lcl|1DL 140 698 837 140 Contig3 lcl|6DS 107 1488 1594... (1 Reply)
Discussion started by: yifangt
1 Replies

9. Shell Programming and Scripting

Finding max of a column grouping by the time

Hi, I have the below text: 16:00 0.50 16:00 0.30 16:00 0.00 16:00 0.00 16:00 0.30 16:01 0.00 16:01 0.30 I want to find the max of the 2nd column grouping by the values in the 1st column using awk. So 16:00 0.50 16:01 0.30 I have tried (3 Replies)
Discussion started by: satishrao
3 Replies

10. Programming

Php number array from max, min, step size mysql data

I want to create a form with data values in a dropdown list. The values in the dropdown list need to be generated on the fly from max, min and increment values contained in a mysql database. Hopefully this makes sense, I really have no idea where to start :confused: Thanks (6 Replies)
Discussion started by: barrydocks
6 Replies
Max(3pm)						  LogReport's Lire Documentation						  Max(3pm)

NAME
Lire::Max - Lire class that implements the max operator SYNOPSIS
use Lire::Max DESCRIPTION
Class that implements the max operator. This operator will find the minimum value appearing in a DLF field among a group of DLF records. METHODS
new( %params ) Creates a new Lire::Max object. SEE ALSO
Lire::ReportSpec(3pm), Lire::ReportOperator(3pm), Lire::Aggregator(3pm), Lire::Aggregate(3pm). AUTHOR
Francis J. Lacoste <flacoste@logreport.org> VERSION
$Id: Max.pm,v 1.10 2008/03/09 19:27:31 vanbaal Exp $ COPYRIGHT
Copyright (C) 2001, 2002 Stichting LogReport Foundation LogReport@LogReport.org This file is part of Lire. Lire is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program (see COPYING); if not, check with http://www.gnu.org/copyleft/gpl.html. Lire 2.1.1 2008-03-09 Max(3pm)
All times are GMT -4. The time now is 08:26 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy