文本文件排序

文本文件排序

我有一个像这样的日志文件

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

将行作为一个整体进行排序。

如何按其中一列对行进行排序,例如 byhostX或 by usr_X

答案1

通过主机X:

排序-nk 6.6

通过 usr_X

排序-nk 9.6

答案2

在维姆中:

: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"

相关内容