Perl приходит на помощь:
#!/usr/bin/perl
use warnings;
use strict;
my $close_to = 6.1937;
my ($close, $lowest);
$/ = q();
while (<>) {
my @arr = split;
if ((! defined $close || abs($arr[1] - $close_to) < abs($close - $close_to))
&& $arr[2] > $arr[3]
) {
$close = $arr[1];
}
if ((! defined $lowest || $arr[1] < $lowest)
&& $arr[2] < $arr[3]
) {
$lowest = $arr[1];
}
if (eof) {
print "$close $lowest\n";
undef $close;
undef $lowest;
}
}
Сохранить как script.pl
, вызвать как script.pl file1 file2 file3 ...