批處理新手入門導讀[視頻教程]批處理基礎視頻教程[視頻教程]VBS基礎視頻教程
[批處理文件精品]批處理版照片整理器[批處理文件精品]純批處理備份&還原驅動在線第三方下載
返回列表 發帖

[文本處理] 用如何用BAT批處理文件對比篩除不同TXT文件帶有固定符號重復內容的行?

現在有A.txt和B.txt ,這2個TXT文件

A.txt為主文件,(比如內有1萬行文本),文本內容每行例如 193abc123
B.txt為需要進行篩選的文本(比如內有3000行文本), 文本內容格式每行例如 193abc123:10ab

A和B文本最大的區別就是格式 , B文本每行都帶有 : 以及和后面的字符.
但是可以看到在 : 號之前的文本B和A是有重復的,所以在對比篩除的時候需要忽略掉 : 以及 : 號后面的字符來進行比對篩除。
最后生成一個 C.txt 文件作為篩除重復后的結果

現在已經有一個簡單篩選批處理命令 findstr /v /G:A.txt B.txt >C.txt

但是運行大文件效率非常慢,一般需要運行的篩選文件都是幾十萬行,所以希望能得到大神的協助提供一個高效的執行批處理代碼。
感激不盡



文本A.txt內容,作為參考母版 ,比如有10行
193abc123
7892aa193
ae9482991
daa92881a
f9893jagge
a93jageccs
9983aggi3a
093hjga398
aienga9222
9ao9comae


文本B.txt內容,格式和A相比就是多了:號以及后面的字符。
請用:號前面的字符作為對比對象,可以看到B文本共6行其中前3行和A文本內容有重復
193abc123:aabb
7892aa193:aa11
ae9482991:aaoo
afiang2901:bbbb
f9jg928877:uuaa
a83hccabc:hoho


最后輸出這個C.txt文本,就是B沒有和A發生重復的后面3行文本
afiang2901:bbbb
f9jg928877:uuaa
a83hccabc:hoho

附件: 您需要登錄才可以下載或查看附件。沒有帳號?注冊

回復 1# beiwe


推薦試試 gawk.exe 效率如何:
  1. gawk -F":" "NR==FNR{a[$1]=$1}NR>FNR{if(!($1 in a))print}" "a.txt" "b.txt" > "c.txt"
復制代碼
http://bcn.bathome.net/s/tool/index.html?key=gawk
【批處理在線視頻分享】http://bbs.bathome.net/thread-31727-1-1.html
【微信公眾號、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html

我幫忙寫的代碼不需要付錢,不用找我要支付寶或微信賬號。如果一定要給,請到微信群給大家發紅吧。

TOP

返回列表
中国体育彩票今日中奖号码