Я лично собирался создать структуру данных и записи посещений, но я вижу, как вы это сделаете и по-другому.
В псевдокоде это выглядит как python, но может быть переписано в perl или shell-скрипте или ...
import subprocess
import os
for line in fileinput.input(['myfile'])::
# split out data. For the sake of it I'm assuming name\tid\tdate
fields = line.split("\")
id = fields[1]
grepresult = subprocess.Popen("grep \"" + id + "\" file1", shell=True, bufsize=bufsize, stdout=PIPE).stdout
if len(grepresult) == 0:
print fields # it wasn't in field1
Это не идеально, не проверено, так что относитесь соответствующим образом, но это дает вам представление о том, как вы будете использовать команды Unix. Тем не менее, как указывает sfussenegger, C / C ++, если вы используете именно это, должны быть в состоянии обрабатывать довольно большие файлы.
Отказ от ответственности: это не очень аккуратное решение (неоднократно вызывающее grep), чтобы соответствовать требованиям вопроса. Если бы я делал это, я бы использовал C.