in reply to
[SOLVED] copying a file with .bak extension
From How can I use Perl's i option from within a program? the -i option changes $^I which in turn changes how <> works. That means the magic only works inside a while loop that uses <>. Your code with -i added on for me made a .bak copy but cleared the original and printed to the command line. The following code does what you requested.
print "##Copyright (C) 2012 by firstName lastName\n" ;