2014-10-08 4 views
8

Есть ли способ отсортировать файл csv на основе 1-го столбца, используя некоторую команду оболочки?Сортировка CSV-файла на основе первого столбца

У меня есть этот огромный файл с более 150K строк, следовательно, я могу это сделать в Excel :(есть альтернативный способ?

+2

Вы пробовали 'sort' команду ?? см. 'man sort' для деталей – thom

ответ

21

sort -k1 -n -t, filename должен сделать трюк.

-k1 сортирует колонку 1.

-n сорта численно вместо лексически (так что "11" не придет раньше "2,3 ...").

-t, задает разделитель (что отдельные s в вашем файле) до ,, так как ваш файл разделен запятой.

+0

Возможно, удобно также установить разделитель полей' -t' в ','? ;-) – thom

+0

Right-o, good catch – Travis

+0

Это помогло - спасибо – fiddle

2

Я не знаю, почему решение выше не работало в моем случае.

15,5 
17,2 
18,6 
19,4 
8,25 
8,90 
9,47 
9,49 
10,67 
10,90 
13,96 
159,9 

однако эта команда решила мою проблему.

рода -t "" -k1n, 1 имя_файла

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