У меня есть 1 файловое пространство csv с разделителями,
Jan_high 32 123
Febr_low 19 139
March_high 12 63
Jan_low 36 18
Febr_high 87 99
March_low 83 77
как мне отсортировать его на основе _high
, затем _low
строки 1-го столбца? Я не могу использовать sort -k1.5
, так как строка high или low не начинается с фиксированной позиции символа. У кого-нибудь есть идеи?
Использование -t '_' -k2
с sort
заставит sort
рассматривать ввод как разделенный символом _
, а не пробелами, а затем сортировать по второму полю (, которое начинается либо с high
илиlow
):
$ sort -t '_' -k2 file
March_high 12 63
Jan_high 32 123
Febr_high 87 99
Febr_low 19 139
Jan_low 36 18
March_low 83 77
В качестве примера возьмем первую строку ввода:
Jan_high 32 123
^^^ ^^^^^^^^^^^
f1 field2