Сначала поймите, как работает система аудита и как добавлять правила syscall, используя auditctl
.
Эта открытая док-страница может быть полезна.
Я предполагаю, что файл с индексом не слишком большой, что его можно полностью загрузить в память. Если да, вы можете использовать этот awk
:
awk -F"[. ]" 'FNR==NR{a[$0]=1} FNR!=NR&&a[$2"."$3]{print $NF}' index_file huge_file
awk
вызывается с двумя файлами: index_file
с содержимым для поиска и huge_file
с много строк, как в вопросе. -F "[.]"
установить разделитель awks на пробел и точку. FNR == NR
применяется только к index_file
a [$ 0] = 1
заполните массив a
шаблонами поиска в качестве индексов и установите значение 1
, просто массив построен. FNR! = NR
применяется только к huge_file
. a [$ 2 "." $ 3]
если существует индекс массива поля 2 и поля 3, объединенные точкой (когда шаблон найден) ...
print $ NF
распечатать последнее поле файла. Вывод:
ValueA
ValueB
ValueC