
Estoy intentando ordenar un archivo con buses de señal. Estoy buscando un resultado en el que los bits estén en orden ascendente: 2 seguido de 3 y no 20.
cat file1 |sort
file1
cls_16_snap[2]
cls_16_snap[20]
cls_16_snap[21]
cls_16_snap[22]
cls_16_snap[23]
cls_16_snap[24]
cls_16_snap[25]
cls_16_snap[26]
cls_16_snap[27]
cls_16_snap[28]
cls_16_snap[29]
cls_16_snap[3]
cls_16_snap[30]
resultado
-------
cls_16_snap[2]
cls_16_snap[20]
cls_16_snap[21]
cls_16_snap[22]
cls_16_snap[23]
cls_16_snap[24]
cls_16_snap[25]
cls_16_snap[26]
cls_16_snap[27]
cls_16_snap[28]
cls_16_snap[29]
cls_16_snap[3]
cls_16_snap[30]
Respuesta1
Prueba esto:
$ sort -t'[' -nk2 file1
cls_16_snap[2]
cls_16_snap[3]
cls_16_snap[20]
cls_16_snap[21]
cls_16_snap[22]
cls_16_snap[23]
cls_16_snap[24]
cls_16_snap[25]
cls_16_snap[26]
cls_16_snap[27]
cls_16_snap[28]
cls_16_snap[29]
cls_16_snap[30]
-n
opción indica sort
comparar numérico en lugar de cadena.