$sftp = Expect->spawn("sftp $toyName\@$targetServer") || die("Couldn't spawn sftp, $!"); $sftp->expect(5, "Password: ") || die("Never got password prompt on $targetServer, ".$sftp->exp_error()."\n"); print($sftp "$toyPassword\r"); $sftp->expect(5, "sftp\> ") || die("Never got sftp prompt on $targetServer, ".$sftp->exp_error()."\n"); print ($sftp "put $backupFileName\r"); $sftp->expect(120, "sftp> ") || die("Never got password prompt on $targetServer after upload, ".$stfp->exp_error()."\n");