sort如何按指定的列排序

2022-05-27 09:45:10 字數 2351 閱讀 4090

<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  testsort -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字段 的值是排序的列...