But what method/protocol are you using (http/ftp/scp/nfs/etc)? Can we see code? If the unix box directory is available to the windows box (my best guess as to what you're doing), are you using File::Copy? That would avoid you needing to read/write yourself.