File a.txt
memiliki sekitar 100 ribu kata, setiap kata ada di baris baru
july.cpp
windows.exe
ttm.rar
document.zip
File b.txt
memiliki 150 ribu kata, satu kata per baris - beberapa kata berasal dari file a.txt
, tetapi beberapa kata baru:
july.cpp
NOVEMBER.txt
windows.exe
ttm.rar
document.zip
diary.txt
Bagaimana saya bisa menggabungkan file ini menjadi satu, menghapus semua baris duplikat, dan menjaga baris yang baru (baris yang ada a.txt
tetapi tidak ada b.txt
, dan sebaliknya)?
text-processing
Kate-Kasia
sumber
sumber
Jawaban:
Ada perintah untuk melakukan hal ini:
comm
. Sebagaimana dinyatakan dalamman comm
, itu sederhana:Perhatikan bahwa
comm
mengharapkan konten file diurutkan, jadi Anda harus mengurutkannya sebelum memanggilnyacomm
, seperti itu:Jadi ringkasnya:
Setelah perintah di atas, Anda akan mengharapkan baris dalam
result.txt
file.sumber
Berikut ini adalah skrip python3 pendek, berdasarkan jawaban Germar , yang harus menyelesaikan ini sambil tetap mempertahankan
b.txt
urutan yang tidak disortir.sumber
sumber
Lihatlah
comm
perintah coreutils -man comm
Jadi misalnya bisa Anda lakukan
(garis unik ke
b.txt
)sumber