我有一个像这样的日志文件
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"