Awk Vs Fgrep

Hi All,
I have 2 files new.txt and old.txt

 
cat new.txt
    sku1|v1|v2|v3
    sku2|v11|v22|v33
    sku3|v11|v22|v33
 
cat old.txt
    sku1|vx1|vx2|vx3
    sku2|vx11|vx22|vx33
    sku3|v11|v22|v33

The key column in both files are first column itself.
I want to get records in new.txt which are not there in old.txt

expected output

sku1|v1|v2|v3
sku2|v11|v22|v33

The fgrep command fgrep -v -f old.txt new.txt gives me the right answer.
But in my file ,no:of columns are 20 and length of each colums is very huge. So fgrep is very slow.. Can we replace fgrep with awk So that this will complete faster .Thnxx in advance

For searching, grep is much faster than awk.

comm -23 new.txt old.txt

provided both files are "sort"-ed.

file has 20million records.i need a faster command.what wil be the code if we are using grep

grep is the fastest command for searching.

fgrep -v -f old.txt new.txt

Or:

grep -Fvf old.txt new.txt

thnx dude. i tried with fgrep which is killing my major time.how wil be the perfomance of comm command

---------- Post updated at 11:30 PM ---------- Previous update was at 01:17 PM ----------

the command comm -23 new.txt old.txt is faster that fgrep. But the lines are breaking in between ,when the column length is too long

it's time for a database solution.