$ awk 'BEGIN { print "Min", "Max" } {a=$1; b=$2; getline; print ($1<a?$1:a), ($2>b?$2:b)}' data.in
Min Max
5500 5800
5600 5900
5900 6100
5800 6100
5800 6100
5700 6200
O código awk
salva os valores atuais na coluna um e dois nas variáveis a
e b
, respectivamente. Em seguida, ele lê a próxima linha explicitamente e imprime o mínimo de a
e o novo valor na coluna um junto com o máximo de b
e o novo valor da coluna dois.
($1 < a ? $1 : a)
está usando o operador ternário ?:
para fazer uma comparação e escolher um valor, dependendo do resultado dessa comparação.
Se você quiser uma saída delimitada por tabulações:
$ awk 'BEGIN {OFS="\t"; print "Min", "Max"} {a=$1; b=$2; getline; print ($1<a?$1:a), ($2>b?$2:b)}' data.in
Min Max
5500 5800
5600 5900
5900 6100
5800 6100
5800 6100
5700 6200