Text-Processing
文本文件排序
我有一個日誌文件
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
將行作為一個整體進行排序。
如何按其中一列對行進行排序,例如 by
hostX
或 byusr_X
?
通過主機X:
排序-nk 6.6
由 usr_X
排序-nk 9.6
在 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"