in reply to Copy file from one sereve to another server directly.
Take a look at the Net::SCP module. This should give you the tools you need. To quote the example from the module documentation:
use Net::SCP; $scp = Net::SCP->new( { "host"=>$hostname, "user"=>$username } ); $scp->scp($source, $destination);
Still, it assumes that you can login to the host without prompting for password (you have exchanged the SSH keys). If you want to automate the password prompt, there is a another module: Net::SCP::Expect. This should work as a starting point.
#!/usr/bin/perl use strict; use v5.14; use Net::SCP::Expect; my $user = 'u'; my $pass = 'p'; my $host = '127.0.0.1'; my $src_path = "/tmp/test/"; my $dst_path = "/tmp/"; my $s = Net::SCP::Expect->new; $s->login($user, $pass); $s->scp($src_path,"$host:$dst_path");
Pick one to your liking, and good luck with the task ahead of you.
UPDATE: added Net::SCP::Expect example.
- Luke
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: Copy file from one sereve to another server directly.
by tobyink (Canon) on Nov 10, 2014 at 14:39 UTC | |
by blindluke (Hermit) on Nov 10, 2014 at 16:52 UTC | |
|
Re^2: Copy file from one sereve to another server directly.
by dilip.patel (Initiate) on Nov 10, 2014 at 17:01 UTC | |
by blindluke (Hermit) on Nov 10, 2014 at 18:53 UTC |