Saul,
It sounds like you just want the max for the first field?
gawk '/foo/{if (max < $1) max=$1} END {print $1}' file
But that doesn't seem likely since it's too simple - no offence intended.
Did you want the 2nd field of the row with the max of the first field?
gawk '/foo/{if (max < $1) {max=$1;save3=$3} } END {print save3;}'
I'm ignoring the vertical bars because your example had spaces which awk
recognizes by default.
If the spaces are not consistent then you might want to use -F.
You can probably find a good example of what you want
on http://commandlinefu.com
--
gsker at skerbitz.org
On Fri, 30 Oct 2015, Saul Alanis wrote:
>
> I have a file with multiple fields;
>
> 2 | foo | bar
> 4 | bar | foo
> 1 | bar | foo
> 3 | foo | bar
>
> My goal is to sort the first field numerically and print the first field of the last result.
>
> awk -F"|" '/foo/ {print $1 | "sort"}'
>
> awk -F"|" '/foo/ {number=$1} END {print version}'
>
> Help is greatly appreciated :)
>
> SDA
>
>
>