You need to use the echo command to print the file name I threw together a quick script that did what you asking
for File in "$@"
echo $File >> $output_file
cat $File >> $output_file
echo "" >> $output_file
Note the use of the varible @ this is all the passed arguments wich is then looped though. The last echo adds a new line
I tried it on 4 files named exfile_1, exfile_2 etc.. Which took the form:
After calling the script like this
A new file "out.txt " was created wich contained:
Also note that if the script is run twice there the new results are appended to the file in totality.
HTH - let me know if this is the solution you where looking for.