use File::Remote; my $remote = new File::Remote(rsh => "/usr/bin/ssh", rcp => "/usr/bin/scp" ); $remote->copy("/local/file", "host:/remote/file") or warn $!;