Сортировать отрицательные значения

У меня проблема с сортировкой значений моих предложений в порядке убывания:
Я набрал эту команду в unix:

sort fileInput -t"(" -k2r >fileSort 

Вот входной файл:

comité de conciliation de décision du parlement européen et du (0.00098379)
les amendements CARD CARD CARD CARD CARD CARD et CARD (-0.00025165)
la protection des consommateurs sur la proposition de directive du (0.00077120)

и вот выходной файл:

comité de conciliation de décision du parlement européen et du (0.00098379)
les amendements CARD CARD CARD CARD CARD CARD et CARD (-0.00025165)
la protection des consommateurs sur la proposition de directive du (0.00077120)

Файл плохо отсортирован. Есть идеи, пожалуйста?


person user17241    schedule 01.04.2013    source источник


Ответы (2)


Добавьте параметры -n и -g для числовой сортировки следующим образом:

sort -t"(" -ngk2r 
person anubhava    schedule 01.04.2013
comment
Вам может понадобиться другой вариант (-g в сортировке GNU) для сортировки чисел с плавающей запятой. - person Jonathan Leffler; 01.04.2013
comment
@ user17241: Какой вариант Unix вы используете? Он работает на моем Mac и Linux CentOS6. - person anubhava; 01.04.2013
comment
@anubhava x86_64 x86_64 x86_64 GNU / Linux - person user17241; 01.04.2013
comment
У меня 2.6.32-279.11.1.el6.x86_64, и здесь он работает нормально. На входе только эти строки или их больше? - person anubhava; 01.04.2013

используйте -rk2 вместо -k2r, то есть

sort fileInput -t"(" -k2r >fileSort 
person whogiawho    schedule 25.12.2016