2015-11-10 5 views
3

у меня есть свой входной файл как:убыванию порядок сортировки для очень небольшого числа

Helguson 1.11889675673e-06 
CAPTION_spot 1.37407731642e-07 
Earning 1.20657023177e-06 
340km 6.82228429758e-07 
Mortimer 3.08700799033e-07 
yellow 6.26784196571e-06 
four 0.000271117940104 
Pronk 5.79848408861e-07 
jihad 3.25632057648e-07 

Я хочу, чтобы отсортировать в порядке второй колонке нисходящие и, следовательно, я попытался с помощью команды Linux:

sort -k2 -nr input.txt > output.txt 

Мой выход генерируется как:

340km 6.82228429758e-07 
yellow 6.26784196571e-06 
Pronk 5.79848408861e-07 
jihad 3.25632057648e-07 
Mortimer 3.08700799033e-07 
CAPTION_spot 1.37407731642e-07 
Earning 1.20657023177e-06 
Helguson 1.11889675673e-06 
four 0.000271117940104 

не сортировки должным образом. Как это решить? Пожалуйста помоги.

ответ

3

Вам нужно указать опцию -g в сортировке. В противном случае он сортируется в алфавитно-цифровом порядке, но с -g он сначала преобразует его в число, а затем сортирует.

+0

Я не сталкивался с необходимостью этого варианта через 20 лет (мне никогда не приходилось сортировать цифры в научной нотации). Старая собака узнала новый трюк - спасибо. –

+0

Спасибо, что так много :) –

Смежные вопросы