一、去掉相鄰重複的資料行
**如下:
$cat data1.txt | uniq
輸出:beijing
wuhan
beijing
wuhan
二、去掉所有重複的資料行
**如下:
$cat data1.txt | sort | uniq
cat log_20160723|awk -f ' ' ''
cat ppp.txt |sort|uniq|wc -l
注:只有uniq命令的話,只是把相鄰的重複的資料行去掉。
如果先 sort 的話,就會把所有重複的資料行變成相鄰的資料行,再 uniq 的話,就去掉所有重複的資料行了。
輸出:beijing
wuhan
附:data1.txt
**如下:
[root@syy ~]# cat data1.txt
beijing
beijing
wuhan
wuhan
wuhan
beijing
beijing
beijing
wuhan
wuhan
linux下刪除大資料檔案中部分字段重複的行
最近寫的乙個資料採集程式生成了乙個含有1千多萬行資料的檔案,資料由4個字段組成,按照要求需要刪除第二個字段重複的行,找來找去linux下也沒找到合適的工具,sed/gawk等流處理工具只能針對一行一行處理,並無法找到字段重複的行。看來只好自己python乙個程式了,突然想起來利用mysql,於是進行乾坤大挪移:
1. 利用mysqlimport --local dbname data.txt匯入資料到表中,表名要與檔名一致
2. 執行下列sql語句(要求唯一的字段為uniqfield)
**如下:
use dbname;
alter table tablename add rowid int auto_increment not null;
create table t select min(rowid) as rowid from tablename group by uniqfield;
create table t2 select tablename .* from tablename,t where tablename.rowid= t.rowid;《/p》 《p》drop table tablename;
rename table t2 to tablename;
上面就是linux刪除檔案重複資料行的方法介紹了,本文介紹了多種情況下刪除檔案重複資料行的方法,希望對你有所幫助。
如何快速的刪除大量檔案
試驗場景 生成5000個1mb大小的檔案,然後用find刪除。看結果說話 user host test for x in seq 1000 do ddif dev zero of x.dd count 1 bs 1mb 2 dev null done user host test time find...
如何快速清空 Linux 中的大檔案
本文總結了幾種快速清空linux中的大檔案方法,快來看看對你有幫助嗎?1.通過重定向到null清空檔案內容 使用 shell 重定向null 不存在的物件 到檔案的最簡單方法來清空檔案內容 access.log2.使用true命令重定向清空檔案這裡我們將使用乙個符號,是乙個shell內建命令,本質上...
如何刪除linux資料夾中的海量檔案
1 建立乙個空目錄 mkdir p tmp rsync blank 2 確立需要清空的目標目錄 data web vip htdocs tuan 3 使用rsync同步刪除 注意目錄後面的 整體效率會快乙個數量級的樣子。rsync delete before a h v progress stats...