use Net::FTP; $f = new Net::FTP('ftp.depository.com') || die "Couldn't connect to server"; $f->login('fred','secret') || die "Couldn't log into server"; $f->cwd('mysecret/directory'); if(! -f $ARGV[0]){ die "File $ARGV[0] doesn't exist"; } $f->put($ARGV[0]);