處理大量文本資料時,需快速刪除重複行。本文介紹三種場景解決方案:去除相鄰重複、去除所有重複、依特定欄位去除大數據重複。

cat data1.txt | uniq
輸出保留首次出現的相鄰行。
cat data1.txt | sort | uniq
sort 將所有相同行聚集相鄰,再由 uniq 去重,得到唯一行集合。
利用 MySQL 匯入後用 SQL 處理:
mysqlimport --local dbname data.txt # 表名需與檔名一致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;
DROP TABLE tablename;
RENAME TABLE t2 TO tablename;此法適用於單機工具無法處理的超大檔案去重需求。
解決 Linux Firefox 中文亂碼:禁止網頁自選字體、移除/修改 49-sansserif.conf Fontconfig 規則、指定首選字體
Linux 下 Node.js Express 框架快速入門:從安裝到首個 Web 服務
Linux Shell 腳本自動化建立 SVN 倉庫:互動式輸入名稱、自動配置權限與認證
Linux pppsetup 指令介紹:Slackware 內建 PPP 連線互動式設定工具
Linux 執行程式提示 error while loading shared libraries 解決方案