I did this before using the equivalent perl inplace-edit '-i', but using a perl script, not just the command line, because the data is bigger.
I did the following that should suit your needs, given some setup and testing: D.
The new source header is defined in the __DATA__ section for the perl script.
Here is an illustration of how you can pass VERSION and COPY_YEAR through environment variables.
While I made some serious pearls, but it works on my test sites, it creates backups, although I would suggest you back up the files first.
I hope this helps in some way.
Usage example:
$ perl add_header *.h *.m
Script:
use strict; my $extension = '.orig'; local $/ = undef;
source share