shell指令碼根據某一列去重

2021-07-29 06:50:10 字數 721 閱讀 9861

sort -t $'\t'-k3

-u filename

sort 排序命令

-t 指定分隔符為『\t』

-k 指定第三列

-u 去重

sort的其他一些選項:

-r 降序排列

-o 把排序結果輸出到原始檔

sort預設是把結果輸出到標準輸出,所以需要用重定向才能將結果寫入檔案,形如

sort filename>newfile

如果將結果輸出到原檔案,用重定向相當於清空

-n 看為數字來比較

你有沒有遇到過10比2小的情況。我反正遇到過。出現這種情況是由於排序程式將這些數字按字元來排序了,排序程式會先比較1和2,顯然1小,所以就將10放在2前面嘍。這也是sort的一貫作風。

我們如果想改變這種現狀,就要使用-n選項,來告訴sort,「要以數值來排序」!

-f 會將小寫字母都轉換為大寫字母來進行比較,亦即忽略大小寫

-c 會檢查檔案是否已排好序,如果亂序,則輸出第乙個亂序的行的相關資訊,最後返回1

-c 會檢查檔案是否已排好序,如果亂序,不輸出內容,僅返回1

-m 會以月份來排序,比如jan小於feb等等

-b 會忽略每一行前面的所有空白部分,從第乙個可見字元開始比較。

EasyExcel使用根據條件某一列不展示方案

最近出現乙個匯出需求。因為我們使用的是阿里的easyexcel元件。糾纏了乙個多小時。最終決定以自定義head的方式來解決這個問題。具體 如下 sheet sheet1 new sheet 1,0 exportarticlevo.class listcol4 lists.newarraylist 文...

pandas根據某列去重

drop duplicates subset comment keep first inplace true 引數 栗子 首先建立乙個dataframe。使用drop duplicates來去除重複值,如果不指明subset,那麼預設根據所有列來考慮,即當某兩行資料所有列都重複時進行去重。subse...

C DataTable 某一列求和

c datatable 某一列求和 1.列為數字型別double total convert.todouble datatable.compute sum 需要求和的引數 2.列為string 型別 先轉為數字型別 再求和 遇到是採用了這個方法 會報錯,加using system.linq 命名空間...