vi里面對列排序


1:
如果我們想以第4列數據進行排序,可以在vim中如此做:
1,12!sort -r -n -k4.1,5

-r 是降序排序
-n 是按數字大小排序
-k,表示根據那個字段排序,4.1,表示第4列第一個字符開始 ,5表示到第5個字段為結束
-t 后面跟分隔符,缺省是空格

2: 
在VIM里面, 如果你要把從當前行以下20行按字母順序排序

只要輸入:.,+20!sort

3:
用vi 來看log檔常要排序一下資料

可以用外部的sort 程式協助排序

令用法如下:
:1,$!sort -k 3
表示從第1列開始, 以第3 欄資料進行排序

:4,$!sort -k 3
表示從第4列開始, 以第3 欄資料進行排序 給有標題的文件用

:1,$!sort -k 4 -t"."
表示從第1列開始, 以第8 欄資料進行排序, 分欄字元是 "."
結果會如下 :
192.168.1.20
192.168.1.218
192.168.1.22
218 竟然排在 22 的前面? 是因為以"文字順序"排序的關係

:1,$!sort -k 4 -t"." -n
表示從第1列開始, 以第4 欄資料進行排序, 分欄字元是 "." , 並且依數字大小而非文字順序排序
結果會改變如下
192.168.1.20
192.168.1.23
192.168.1.218
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM