所以我有兩個文件。 File A
和File B
。 File A
巨大(> 60 GB),並有16行,數字和字符串的混合,由「|」分隔,並有超過600,000,000行。字段3在這個文件中是ID,它是一個數字字段,長度不同(例如,某人的ID可以是1,而其他人的ID可以是100)加入unix當字段是數字在一個巨大的文件
File B
只有一堆ID(〜1,000,000)和我想提取File A
中具有「文件B」中ID的所有行。我已經開始做這個使用Linux下面的代碼
sort -k3,3 -t'|' FileA.txt > FileASorted.txt
sort -k1,1 -t'|' FileB.txt > FileBSorted.txt
join -1 3 -2 1 -t'|' FileASorted.txt FileBSorted.txt > merged.txt
我的問題是,merged.txt
是空的(當我知道一個事實,至少有10場比賽)。我用Google搜索這一點,它似乎問題是連接字段(ID)是數字。有些人提出用零填充該領域,但1)我不完全確定如何做到這一點,2)這似乎非常緩慢/時間效率低下。
有沒有其他想法呢?或幫助如何將填充0僅添加到相關字段。