羣裏同學的需求,剛學一段時間,到網上搜了下資料就開始操作了。
2個文件排重,在第二個文件裏把第一個文件裏出現的行刪除,第一個文件有8000行,第二個文件有2000萬行
環境1:
文件1
cat a.txt
aa
aaa
bb
cc
文件2
cat b.txt
aaa
ccc
vvv
cat c.py
python腳本
#!/usr/bin/env python
import difflib
import sys
a = open('a.txt', 'U').readlines()
b = open('b.txt', 'U').readlines()
diff = difflib.ndiff(a,b)
sys.stdout.writelines(diff)
python c.py > d.txt 輸出腳本到d.txt
cat d.txt |awk -F ' ' '$1~/+/{print $2}'
ccc
vvv
把開頭爲加號的選出即可。