O uso de -k
é:
-k field_start[type][,field_end[type]]
Se o campo final for omitido, todos os campos do campo inicial serão usados. Em qualquer caso, os campos secundários são usados para desempate em ordem.
Então, quando você faz -k3
, os campos 3 e 4 são usados para classificação, com 4 para desempate. Com -k3,3
, somente o campo 3 é usado - os outros são ignorados. Então você está correto em sua conclusão.
-n
especificado por si só significa que todos os campos são tratados como números e classificados de acordo. Alfabeticamente (em vez disso, lexicograficamente), 2
vem depois de 102
, numericamente é o contrário. Veja a página de manual para saber o que significa quando um campo é tratado como um número .