Help with improve the performance of grep

Input file:

#content_1
12314345345
242467
#content_14
436677645
576577657
#content_100
3425546
56
#content_12
243254546
1232454
.
.

Reference file:

content_100
content_14
.
.

Desired output file:

#content_100
3425546
56
#content_14
436677645
576577657
.
.

Command try:

grep -A2 'content_100' Input_file > output_file

I have long list of reference list to scan through the reference file against input file.
Do have any better idea to improve the "grep" performance by using c++?
Thanks.

 
$ while read pattern; do nawk -v p=$pattern 'BEGIN {RS="#"} $0~p' input; done < referencefile

content_100
3425546
56
content_14
436677645
576577657

1 Like