Schrift
[thread]12084[/thread]

Net::SCP zwischen Windows und Unix

Leser: 4


<< >> 3 Einträge, 1 Seite
WolverineJ
 2008-06-26 13:05
#111543 #111543
User since
2008-06-26
2 Artikel
BenutzerIn
[default_avatar]
Hallo Community,

als Perl-Anfänger möchte ich aus einem Projekt heraus ein Perl-Skript schreiben, welches Daten von einem Solaris-Host aus dem Filesystem zu einem Windows 2003 - Server kopieren soll. Dies soll mittels SCP funktionieren.
Also habe ich mir in meiner ActivePerl-Umgebung über den Package Manager folgende Pakete geladen:
- Net-SCP 0.06
- Net-SSH 0.08

Mittels SSH-Key-Exchange ist es mir bereits möglich ohne Passworteingabe von dem Windows-Server auf den Solaris-Server zuzugreifen (mittels PutTy).

Nun hänge ich bei dem folgenden Skript und drehe mich im Kreis:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
use warnings;
use Sys::Hostname;
use Net::SCP qw(scp);

$hostname="XXX";
$username="xxx";
$source="/dir/file";
$destination="C:\\dir2";

$scp = Net::SCP->new("$hostname");
$scp->login("$username");
$scp->get("$source","$destination");

Das Skript läuft augenscheinlich ohne Fehler durch. Jedoch erscheint die Datei nicht auf dem Windows-Server.
Kann mir jemand einen Tipp geben, wo mein Fehler liegt?

Danke!
renee
 2008-06-26 13:53
#111547 #111547
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Du fragst keine Rückgabewerte ab...

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
use warnings;
use Sys::Hostname;
use Net::SCP qw(scp);

$hostname="XXX";
$username="xxx";
$source="/dir/file";
$destination="C:\\dir2";

$scp = Net::SCP->new("$hostname");
$scp->login("$username") or die $scp->{errstr};
$scp->get("$source","$destination") or die $scp->{errstr};
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
WolverineJ
 2008-06-26 15:45
#111553 #111553
User since
2008-06-26
2 Artikel
BenutzerIn
[default_avatar]
Hi,

Danke für Deine Antwort!

Wenn ich das Skript entsprechend abändere, bekomme ich folgende Fehlermeldung beim Ausführen:

"Use of uninitialized value in die at perl_script.pl line 12.
Died at perl_script.pl line 12."

Also zum besseren Verständnis nochmal das aktualisierte Skript:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
use warnings;
use Sys::Hostname;
use Net::SCP qw(scp);

$hostname="XXX";
$username="xxx";
$source="/dir/file";
$destination="C:\\dir2";

$scp = Net::SCP->new("$hostname");
$scp->login("$username") or die $scp->{errstr};
$scp->get("$source","$destination") or die $scp->{errstr};
<< >> 3 Einträge, 1 Seite



View all threads created 2008-06-26 13:05.