сортировка текстовых файлов

У меня есть файл журнала вроде

name = CE_20_122 assigned_hostnames = host1 cpuset_name = usr_1397032 
name = CE_21_122 assigned_hostnames = host4 cpuset_name = usr_1397028 
name = CE_22_122 assigned_hostnames = host4 cpuset_name = usr_1397024 
 .
 .
 .
name = CE_76_122 assigned_hostnames = host27 cpuset_name = usr_1397012 
name = CE_77_122 assigned_hostnames = host28 cpuset_name = usr_1397128

Команда

sort logfile

сортирует строки в целом.

Как отсортировать строки по одному из столбцов, например от hostX или от usr_X ?

-2
31.08.2016, 00:09
2 ответа

по hostX:

sort -nk 6.6

by usr_X

sort -nk 9.6

2
28.01.2020, 05:15

В Vim:

:sort n /host\d*/

для сортировки по хосту и

:sort n /usr_\d*/

для сортировки по пользователю. Поскольку использование vim в первый раз может быть непосильным, вы можете сделать это из командной строки.

vim file.txt -c "sort n /host\d*/" -c "wq"

или

vim file.txt -c "sort n /usr_\d*/" -c "wq"
1
28.01.2020, 05:15

Теги

Похожие вопросы