LINUX.ORG.RU

проверка на совпадающие и различающиеся слова в двух текстовых файлах?

 


0

2

Приветствую! задача - два файла, текстовых, с строками типа

TRQW39DLGS IYVR11OHRE

позиции различаются, то есть построчное сравнение - мимо.

надо получить результат в виде - какие ключевые слова имеются в обоих файлах, по хорошему - с указанием номера строки - и какие только в одном из них ?

утилиты типа diff как я понимаю, только построчно умеют сравнивать и указывать отличия, а мне надо не построчно, а по контенту....

есть под линуксом какое нибудь решение для этого?

Спасибо заранее...

awk '{w=1;while(length($w)){p[$w]=p[$w] " " FNR;w++;};}END{for(q in p)print q,p[q];}' file1 | sort > use1
awk '{w=1;while(length($w)){p[$w]=p[$w] " " FNR;w++;};}END{for(q in p)print q,p[q];}' file2 | sort > use2
diff use1 use2 | tee use.diff
berrywizard ★★★★★
()
Ответ на: комментарий от berrywizard

благодарствую, попрообую завтра применить!

2aedeph - и тебе спасибо! буду знать! :)

wisedraco ★★
() автор топика
Ответ на: комментарий от berrywizard

применил. ничего не понял. что там в выводе должно быть? у мну вроде непонятное получилось - в выводе и дублирующиеся строки есть, и уникальные....

оно спейсы учитывает?

wisedraco ★★
() автор топика
Ответ на: комментарий от wisedraco

в линуксквесшене подсказали.

только совпадающие слова выдать: comm -1 -2 <(sort -u file1) <(sort -u file2)

только разные: comm -3 <(sort -u file1) <(sort -u file2)

wisedraco ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.