У меня есть один файл длиной 78k .txt с британскими словами и 5k строк .txt-файл с наиболее распространенными британскими словами. Я хочу разобрать наиболее распространенные слова из большого списка, чтобы у меня появился новый список с не как обычными словами.Использование grep, чтобы найти разницу между двумя большими текстовыми списками
Мне удалось решить мою проблему по другому вопросу, но я бы очень хотел знать, что я делаю неправильно, так как это не работает.
Я попытался следующие:
//To make sure they are trimmed
cut -d" " -f1 78kfile.txt | tac | tac > 78kfile.txt
cut -d" " -f1 5kfile.txt | tac | tac > 5kfile.txt
grep -xivf 5kfile.txt 78kfile.txt > cleansed
//But this procedure apparently gives me two empty files.
Если я запускаю только Grep без разреза первых, я получаю слова, которые я знаю, в обоих файлах.
Я также попытался это:
sort 78kfile.txt > 78kfile-sorted.txt
sort 5kfile.txt > 5kfile-sorted.txt
comm -3 78kfile-sorted.txt 5kfile-sorted.txt
//No luck either
Два текстовых файлов в случае, если кто-то хочет попробовать для них самих: https://www.dropbox.com/s/dw3k8ragnvjcfgc/5k-most-common-sorted.txt https://www.dropbox.com/s/1cvut5z2zp9qnmk/brit-a-z-sorted.txt
См. Принятый ответ для [этого вопроса в StackOverflow] [1]. [1]: http://stackoverflow.com/questions/18204904/fast-way-of-finding-lines-in-one-file-that-are-not-in-another –
'вырезать -d "" -f1 78kfile.txt | tac | tac> 78kfile.txt' почти наверняка предоставит вам неполную копию '75kfile.txt' save для' 5kfile.txt'.Вам нужно сохранить результат конвейеров в отдельный файл, возможно, '78kfile.tmp'. Удачи. – shellter
Вы можете использовать vimdiff, чтобы увидеть разницу между двумя файлами. – Nagaraju