<1>[root@localhost company]# cat test
06d7 145 41925425
06e1 127 41925425
06e3 230 41925425
06ff 3847 41925425
070d 3408 41925425
0715 4 41925425
0726 134 41925425
我想按第二列值進行排序,從大到小的順序。
[root@localhost company]#sort -n -k2 test或sort -g -k2 test//在這沒有區別,在別的地是有區別的
0715 4 41925425
06e1 127 41925425
0726 134 41925425
06d7 145 41925425
06e3 230 41925425
070d 3408 41925425
06ff 3847 41925425
0715 4 41925425
06e1 127 41925425
0726 134 41925425
06d7 145 41925425
06e3 230 41925425
070d 3408 41925425
06ff 3847 41925425
-n, --numeric-sort compare according to string numerical value
-g, --general-numeric-sort compare according to general numerical value
-k, --key=pos1[,pos2] start a key at pos1, end it at pos2 (origin 1)
-t, --field-separator=sep use sep instead of non-blank to blank transition
linux的bash shell中有個函式叫做sort,其中有個flag是-t,這個flag的作用是指定使用者定義的字元作為分隔符(bash shell 預設用'\t'和' '作為分隔符),但是當指定的字元為'\t'時,用法有些特別了,如下:
cat test.txt|sort -k 1 -t $'\t' > sort.txt
cat test.txt|sort -k 2 -t ' ' > sort.txt
注意到區別了嗎?如果指定的分隔符是'\t',我們需要用$來使它表示本來的意思,否則sort程式無法識別'\t',而對於一般的制定字元,比如' '和':'就不用了。當然,用$' '和$":"也是可以的。
<2>sort -g -k2 -t':' -r nat.cfg //按照以":"為分割的最後一列反向排序
20012 192.168.5.249:20012
30062 192.168.5.249:20011
30042 192.168.5.228:20010
20005 192.168.5.232:20005
20000 192.168.5.161:20000
60251 192.168.5.251:22
60250 192.168.5.250:22
60249 192.168.5.249:22
60248 192.168.5.248:22
60247 192.168.5.247:22
C DataTable按指定列排序
c 提供的內建物件datatable功能特別的強大,如果我們需要對datatable中的某一列進行排序怎麼處理呢,具體 如下 datatable dt new datatable dt.columns.add id dt.columns.add name dt.rows.add newobject ...
sort按vector元素排序
include include include using namespace std typedef struct example example 這個comparison函式很重要.如果希望公升序排序,就是 降序排列就是 號 這樣便於直觀記憶.如果希望用elem2作為比較標準 就把elem1改為...
easyUI datagrid 按列排序
1.設定列屬性 設定列屬性sortable true 如 2.設定 屬性 設定 屬性remotesort true 如 table id datagrid 3.設定後台請求程式注 datagrid 向後台傳送請求的時候,缺省會攜帶兩個引數,分別是sort和order。其中sort字段 的值是排序的列...