O ordenamento não usa ordem natural

4

Eu usei uniq -c e sort extensivamente em outras máquinas e sempre funcionou muito bem.

Agora, na minha nova máquina Ubuntu (13.04), acabo com uma ordem estranha:

% cat queries.log | grep INSERT | sort | uniq -c | sort
      1 INSERT INTO A (id, organization_id) VALUES (?, ?)
      2 INSERT INTO B (id, resource_id) VALUES (?, ?)
      2 INSERT INTO C (id) VALUES (?)
      2 INSERT INTO D (email, password) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)
      3 INSERT INTO E (user_id, type) VALUES (?, ?)
  40275 INSERT INTO F (id, resource_id) VALUES (?, ?)
  40283 INSERT INTO G (action_id, role_id, user_id) VALUES (?, ?, ?, ?, ?)
      6 INSERT INTO H (id, resource_id) VALUES (?, ?)

Por que 6 após 40283 ?

E como posso acabar com a ordem "natural" esperada?

    
por Matthieu Napoli 14.11.2013 / 10:40

1 resposta

6

Você precisa fornecer a opção -n para ativar a classificação numérica,

   -n, --numeric-sort
          compare according to string numerical value
    
por 14.11.2013 / 10:44

Tags