Suponho que você esteja confuso com o comando cat
(e o redirecionamento de shell) e não com find
one.
find . -type f -name "*.c" -exec cat {} \; > all_c_files.txt
é equivalente a:
(
cat file1 ;
cat file2 ;
cat file3 ;
...
cat fileN
) > all_c_files.txt
obviamente, o comando anterior e o seguinte têm o mesmo resultado idêntico:
cat file1 file2 file3 ... fileN > all_c_files.txt