Thread Output records separator mit Net::OpenSSH (0 answers)
Opened by br0tkasten at 2009-07-22 10:02

br0tkasten
 2009-07-22 10:02
#123455 #123455
User since
2009-07-22
6 Artikel
BenutzerIn
[default_avatar]
Hallo Zusammen,

zur Konfiguration eines embedded Geräts brauche ich ein Skript um mich an diesem per SSH anzumelden und Kommandos auszuführen. Dummerweise handelt es sich um eine nicht ganz übliche Shell. Eine Kommandozeile wird anstelle von \n (new-line) mit ; (semikolon) abgeschlossen.
Versuche die Variable $\ (Output Record Separator) anders zu setzen (undef, '', ';') lieferten nicht das gewünschte Ergebnis.

Hier mein Testcode

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
#!/usr/bin/perl

use Net::OpenSSH;

local $\;
my $ssh = Net::OpenSSH->new('user:password@hostname');

die("Error: connection failed") if($ssh->error);

my ($out,$err) = $ssh->capture2("some command;");

print "> $out\n\n";
print "E $err\n";


Ausgabe ist lediglich
Code: (dl )
1
2
3
4
Connection to HOSTNAME closed by remote host.
>

E


Hat hier jemand Erfahrung mit Net::OpenSSH und weis wie ich mein Problem doch noch lösen könnte? Oder kennt vielleicht jemand ein anderes Perl Modul das $\ berücksichtigt?

Vielen Dank schon im vornherein.

mfg
bk

View full thread Output records separator mit Net::OpenSSH