use CGI qw(-utf8); $CGI::POST_MAX = 40_000_000; use File::Copy; use File::Basename; my $c = CGI->new; if($c->param){ print $c->header(-charset => 'utf-8'), $c->h2('Result'); my $fh = $c->param('upfile'); # Get the FileHandle from temp-File my $source = $c->tmpFileName($fh); # get the source filename my $dest = $fh; # scalar context, origin filename from UserAgent my $ref = [fileparse($dest)]; # Dateiname in [0] print "Copy $source, /tmp/$ref->[0]"; copy $source, "/tmp/$ref->[0]"; }