У меня есть idsfile.csv , который представляет собой файл идентификаторов, разделенных запятыми (без символов новой строки),
и я хотел бы получить только строки из второго файла datafile.txt
которые имеют один из этих идентификаторов (в окружении вкладок).
Пример idsfile.csv:
000001,000002,000005,000007,000008,000009,000011,000021,000029,000040,...
Пример datafile.txt:
titl e1 000001 description1
title2 000003 descr iption2
ti tle3 000021 des cripti on3
title4 000023 description4
Если бы я делал это, не считывая идентификаторы из файла, я бы попытался:
grep -Ev '/\t000001\t|\t000002\t|\t000003\t/' datafile.txt > output.txt
но я не уверен, как читать значения через запятую так, чтобы я мог затем использовать их в регулярном выражении.
Кто-нибудь знает, как я могу собрать это как однострочный командный запрос, пожалуйста? Возможно с текстами можно?
Редактировать: На самом деле, если бы я изменил idsfile.csv, чтобы иметь идентификатор в каждой строке (с вкладкой до и после), то я бы выстроил строку, аналогичную этой работе, или, я полагаю, синтаксис совершенно неправильный: 1018 *
grep -Evf idsfile.csv datafile.txt > output.txt