in reply to file copy undefined?

In addtion to what others have told you, you should read the documentation for File::Copy, which says:
The copy function takes two parameters: a file to copy from and a file to copy to.
and a little later
An optional third parameter can be used to specify the buffer size used for copying.

You've got 3 parameters in your call: a filehandle and the names of two files (there's no need to quote variables, btw).