use Net::FTP; $ftp = Net::FTP->new('your.ftp.server', Debug => 1, Passive=>0) or die "Cannot connect to your.ftp.server: $@"; $ftp->login("user",'passwd') or die "Cannot login ", $ftp->message; $ftp->cwd('a.remote.directory') or die "Cannot change working directory ", $ftp->message; $ftp->put('./my.local.file.in.the.lcwd') or die "put failed ", $ftp->message; $ftp->quit;