У меня есть список имен и идентификаторов (50 записей)
cat input.txt
name ID
Mike 2000
Mike 20003
Mike 20002
И есть огромный zip-файл (13 ГБ)
zcat clients.gz
name ID comment
Mike 2000 foo
Mike 20002 bar
Josh 2000 cake
Josh 20002 _
Мой ожидаемый результат -
NR name ID comment
1 Mike 2000 foo
3 Mike 20002 bar
каждый $1"\t"$2
client.gz является уникальным идентификатором. Там могут быть некоторые записи из input.txt
, которые могут отсутствовать в clients.gz
. Таким образом, я хотел бы добавить столбец NR к моему выводу, чтобы выяснить, какие отсутствуют. Я хотел бы использовать zgrep. awk занимает очень много времени (так как я должен был zcat
для распаковки сжатого файла, я предполагаю?)
Я знаю, что zgrep 'Mike\t2000'
не работает. Я могу себе представить проблему NR с помощью awk FNR.
Пока у меня есть:
awk -v q="'"
'
NR > 1 {
print "zcat clients.gz | zgrep -w $" q$0q
}' input.txt |
bash > subset.txt