# 2.3 mb
fgrep --recursive "//" * > comments-1.txt
# 3.8 mb
fgrep -h --recursive "//" * > comments-2.txt
$ wc -l comments-1.txt
30123 comments-1.txt
$ wc -l comments-2.txt
61708 comments-2.txt
I did this on the Linux kernel source.
Why does the -h parameter make it spit out over twice as many lines?
For the first 5845 lines it works correctly. After that it starts
spitting the lines with filenames.
arch/s390/appldata/appldata.h:11://#define APPLDATA_DEBUG
/* Debug
messages on/off */
arch/cris/arch-v10/kernel/time.c:200://static unsigned short myjiff;
/* used by our debug routine print_timestamp */
arch/parisc/kernel/real2.S:280: /*
http://lists.parisc-linux.org/hypermail/parisc-linux/10916.html
Then it stops at line 37430 with the filenames and resumes to printing
lines without the filenames until end of file.
Not sure if this is a bug, or me being stupid.