Как получить строки из файла A, исключив любые MbrIds в файле B?A - файл с разделителями трубы - PullRequest
1 голос
/ 22 мая 2019

Файл A имеет разделитель трубы, 5 миллионов строк:

600000002233199881|1000109668|2019-05-10|
600000002233199700|1000002681|2019-05-10|
600000002233199701|1000003390|2019-05-10|

Файл B имеет только 1 идентификатор столбца, 1 k строк:

1000002681
1000109668

Как получить строки изФайл, исключающий идентификаторы в файле B?Ожидаемый результат:

600000002233199701|1000003390|2019-05-10|

Я пытался grep -Fwf fileB fileA по этой ссылке ниже, но не работает для моего случая.Интересно, как изменить это, чтобы работать.https://unix.stackexchange.com/questions/110645/select-lines-from-text-file-which-have-ids-listed-in-another-file

1 Ответ

1 голос
/ 22 мая 2019

Чтобы исключить, вам нужен флаг -v.

Попробуйте grep -Fvwf fileB fileA. Убедитесь, что в конце файла B нет пустой строки.

$ cat fileA 
600000002233199881|1000109668|2019-05-10|
600000002233199700|1000002681|2019-05-10|
600000002233199701|1000003390|2019-05-10|
$ cat fileB
1000002681
1000109668
$ grep -Fvwf fileB fileA
600000002233199701|1000003390|2019-05-10|
$ 
...