Linux ordena la penúltima columna

Linux ordena la penúltima columna

Me gustaría saber cómo ordenar la penúltima columna. Tiene la palabra "días=" delante del número. Puedo obtener la columna con awk '{print $(NF-1)}', pero la clasificación es incorrecta.

    457000      (test2) && (SGD||RMB||HKD||YEN)    days=5000    71
    37622 (this is || test1)&&(SGD||HKD||RMB) days=630 40010 
    43944 (this is)&&(SGD||HKD) days=80 102732 
    79378 (this is||test2)&&(HKD||RMB)   days=800 205425 

El resultado que estoy buscando es

    43944 (this is)&&(SGD||HKD) days=80 102732 
    37622 (this is || test1)&&(SGD||HKD||RMB) days=630 40010 
    79378 (this is||test2)&&(HKD||RMB) days=800 205425
    457000      (test2) && (SGD||RMB||HKD||YEN)    days=5000    71

Respuesta1

Un poco complicado, pero debería funcionar:

awk '{print substr($(NF-1), 6), $0}' file | sort -g | cut -d' ' -f2-

Duplica la penúltima columna en el frente (eliminando el days=), ordena numéricamente y luego elimina la primera columna (la penúltima duplicada).

información relacionada