這篇文章主要介紹了shell指令碼去重的幾種方法例項,本文直接給出**例項,需要的朋友可以參考下
測試檔案
複製**
**如下:
[root@bogon ~]# cat >test
jason
jason
jason
fffff
jason
按 ctr + d儲存
1、sort -u
複製**
**如下:
[root@bogon ~]# sort -u test
fffff
jason
2、uniq
複製**
**如下:
[root@bogon ~]# uniq test
jason
fffff
jason
由此可見,uniq需要先排序後才能去重
3、sort、管道和uniq結合運用
去除重複並保留乙份重複的資料
複製**
**如下:
[root@bogon ~]# sort test|uniq
fffff
jason
去除所有重複的行(不保留重複的行),並計算行數
複製**
**如下:
[root@bogon ~]# sort test|uniq -uc
1 fffff
找出所有重複的行,並計算行數
複製**
**如下:
[root@bogon ~]# sort test|uniq -dc
4 jason
根據某個欄位去重
將原有資料改為
複製**
**如下:
[root@bogon ~]# more test
jason 1
jason 2
jason 1
fffff 2
jason 3
[root@bogon ~]# sort -k 1,1 -u test
fffff 2
jason 1
man sort檢視sort的用法,-k引數是這麼描述的:
複製**
**如下:
-k, --key=pos1[,pos2]
start a key at pos1 (origin 1), end it at pos2 (default end of line)
也就是說-k哪幾個列進行排序,pos1是開始列,pos2是結束列
Shell指令碼去重的幾種方法例項
測試檔案 複製 如下 root bogon cat test jason jason jason fffff jason 按 ctr d儲存1 sort u 複製 如下 root bogon sort u test fffff jason 2 uniq 複製 如下 root bogon unipob...
去重簡單幾種方法
第一種 array unique 移除陣列中重複的值 input array a green red b green blue red result array unique input print r result 以上例程會輸出 array a green 0 red 1 blue 第二種 交換...
陣列去重的幾種方法
實現思路 新建一新陣列,遍歷傳入陣列,值不在新陣列就加入該新陣列中 注意點 判斷值是否在陣列的方法 indexof 是ecmascript5 方法,ie8以下不支援,需多寫一些相容低版本瀏覽器 最簡單陣列去重法 function unique1 array return n 實現思路 新建一js物件...