sort -k3n,3 filename | tail -5 | cut -d " " -f1,6-7
O comando acima classificará o arquivo no 3º campo. Agora, estou canalizando essa saída para o comando tail
para imprimir os 5 primeiros números na terceira coluna. No entanto, se você precisar apenas da primeira coluna e desta terceira coluna na saída, poderá canalizar a saída para o comando cut
.
Teste
cat filename
T_235820.1| 139697 192 0
xm|161622288|ref|RT_340093.1| 153819 2607 0
xm|75755638|ref|RT_557407.1| 153821 1937 0
xm|108773031|ref|RT_678101.1| 161452 1688 0
xm|30352011|ref|RT_784766.1| 150568 105 0
T_235820.1| 139697 192 0
xm|161622288|ref|RT_340093.1| 153819 607 0
xm|75755638|ref|RT_557407.1| 153821 937 0
xm|108773031|ref|RT_678101.1| 161452 1881 0
xm|30352011|ref|RT_784766.1| 150568 1051 0
Agora, eu corro o comando acima neste arquivo.
sort -k3n,3 filename | tail -5 | cut -d " " -f1,6-7
A saída que recebo é
xm|30352011|ref|RT_784766.1| 1051
xm|108773031|ref|RT_678101.1| 1688
xm|108773031|ref|RT_678101.1| 1881
xm|75755638|ref|RT_557407.1| 1937
xm|161622288|ref|RT_340093.1| 2607
EDITAR
Você pode adicionar o sinalizador -g para números flutuantes e negativos, caso você tenha algum em seu arquivo. O comando seria semelhante,
sort -k3ng,3 filename | tail -5 | cut -d " " -f1,6-7