2015-10-23 4 views
0

Мой файл выглядит следующим образом:Сортировать по подстроке колонке 2, затем по столбцам 1 Баш

0.3 test_a1 
0.2 test_a1 
0.4 test_a1 
0.1 test_a21 
0.9 test_a21 
0.5 test_a21 
0.3 test_b99 
0.2 test_b99 

Каждая группа колонка 2 без номера в конце (в приведенном выше примере эти две группы test_a и test_b). Я хочу заказать по группе, то заказ на колонке 1, так что правильный результат:

0.1 test_a21 
0.2 test_a1 
0.3 test_a1 
0.4 test_a1 
0.5 test_a21 
0.9 test_a21 
0.2 test_b99 
0.3 test_b99 

Следующая команда дает неправильный результат:

sort -t' ' -k2,2 -k1 file.txt 

0.2 test_a1 
0.3 test_a1 
0.4 test_a1 
0.1 test_a21 
0.5 test_a21 
0.9 test_a21 
0.2 test_b99 
0.3 test_b99 

Как я могу достичь правильного результата?

ответ

0
sort -k2,2.7 

Результат

0.1 test_a21 
0.2 test_a1 
0.3 test_a1 
0.4 test_a1 
0.5 test_a21 
0.9 test_a21 
0.2 test_b99 
0.3 test_b99 
Смежные вопросы