Проблема со сравнением 2 файлов с использованием SDIFF

У меня есть модуль, на котором я сейчас застрял. Я хотел бы обратиться к вам за помощью.

Допустим, у меня есть файл со следующими записями:

ABC 123... <- 1-й случай на основе значения столбца 1

CDE 456...

DEF 234...

ABC 234... <- база 2-го вхождения по значению столбца 1

и еще один файл с этими записями:

           <-- missing 1st occurence

CDE 234...

DEF 456...

ABC 346... <- база 2-го вхождения по значению столбца 1

В настоящее время мне нужно сравнить оба файла и получить вывод о том, что 2-й случай отсутствует во 2-м файле. Первый этап задания завершен (я не уверен, что это правильный способ справиться с этим). Сначала я отсортировал оба файла на основе значений столбца 1. Затем я использую "sdiff -s" для сравнения обоих отсортированных файлов. Ограничение, которое я получил с этим подходом, состоит в том, что "отсортированный файл" содержит только столбец данных 1.

Например:

азбука

азбука

CDE

DEF

Это дало мне желаемый результат. Но проблема в том, что я не мог понять, какой случай ABC отсутствовал во втором файле. Если я использую "grep" в первой базе файлов по результату "sdiff -s", это даст мне 2 значения.

Может кто-нибудь пролить некоторое понимание этого?

Благодарю.

1 ответ

Как насчет

sdiff -s <(cut -d' ' -f1 file1) <(cut -d' ' -f1 file2)

(Полагаю, вам нужна bash версии 4+ для перенаправления процессов)

Другие вопросы по тегам