Mark,
I've got the code you sent installed and working (or almost working
anyway) snippet below:
>> foreach my $rec (@machines) {
($host,$user,$pass,$sname) = split(/,/, $rec);
open2(*RD_HD, *WR_FH, "ssh -l $user $host $user/@$host uptime")
|| die "cant fork child";
print WR_FH "$pass\n";
<RD_FH>;
};
On the html document I produce this is what I get:
Content-Type: text/html Content-Type: text/html Content-Type: text/html
11:21PM up 33 mins, 1 user, load averages: 0.12, 0.03, 0.01
Content-Type: text/html
Server Status
Pikachu -- 0
I'm trying to get this silly thing working, so any ideas or suggestions
are more than appreciated.
His Faithful Servant,
Rev. Mark-Nathaniel Weisman
-----Original Message-----
From: Mark Goland [mailto:[EMAIL PROTECTED]]
Sent: Sunday, December 08, 2002 12:12 AM
To: Mark-Nathaniel Weisman
Cc: perl
Subject: Re: Using ssh for uptime?
system returns shell exit status
----- Original Message -----
From: "Mark-Nathaniel Weisman" <[EMAIL PROTECTED]>
To: "perl" <[EMAIL PROTECTED]>
Sent: Sunday, December 08, 2002 3:23 AM
Subject: RE: Using ssh for uptime?
> This is the line that allowed me to capture a uptime value with Perl
> using ssh to the remote boxes. $uptime = system "ssh -l $user $host
> uptime $pass";
>
> The return value is;
> 65280 for all boxes.
>
> Anyone have any idea why I'm not reading the real uptimes, instead I
> get the number above. Am I passing the password correctly, when I do
> this manually I get a request for a password, could this be an error
> number?
>
> His Faithful Servant,
> Rev. Mark-Nathaniel Weisman
>
> -----Original Message-----
> From: Mark Goland [mailto:[EMAIL PROTECTED]]
> Sent: Saturday, December 07, 2002 1:21 PM
> To: Mark Weisman
> Cc: perl
> Subject: Re: Using ssh for uptime?
>
>
> why are you printing the comman to a file... this is how I would
> rewrite the part that does the command. If you dont want to write it
> as a shell command use Socket, or use IO::Socket.
>
> use FileHandle;
> use IPC::Open2;
> My (@machines,$host,$user,$pass)
>
> # read your record
> Open(INFILE,"<machines.txt") || die "Error opening
> machines.txt.$!,stopped" chomp ( @machines = <INFILE> );
> Close(INFILE);
>
> Foreach my $rec (@machines) {
> ($host,$user,$pass) = split(/,/, $rec);
> open2(*RD_HD, *WR_FH, "ssh $user\@$host uptime") || die cant fork
> a child;
> <RD_FH>;
>
> if( m/password/ ){
> print WR_FH "$pass\n";
>
> print "\t\t\tHOST $host responded with\n";
> print
> "__________________________________________________________\n";
> while (<RD_FH>){print};
>
> }
> else{
> print "error msg from ssh: $_\n";
> }
>
>
>
> }
> exit 0;
>
> this code is untested for more info see perldoc perlipc
>
>
> > # or die "Error opening records.txt.$!,stopped";
> > # close(OUTFILE);
> > # open (OUTFILE, ">>records.txt")
> > # or die "Error opening records.txt.$!,stopped";
> > # print OUTFILE 'ssh -l $user $host "uptime"';
> > # close(OUTFILE);
> > #};
>
>
>
>
>
>
>
>
>
> > ##!/usr/bin/perl
> >
> > #My (@machines,$host,$user,$pass)
> >
> > #Open(INFILE,"<machines.txt")
> > # or die "Error opening machines.txt.$!,stopped"
> > #@machines = <INFILE>;
> > #Close(INFILE);
> > #Foreach my $rec (@machines) {
> > # chomp($rec);
> > # ($host,$user,$pass) = split(/,/, $rec);
> > # open (OUTFILE, ">records.txt")
> > # or die "Error opening records.txt.$!,stopped";
> > # close(OUTFILE);
> > # open (OUTFILE, ">>records.txt")
> > # or die "Error opening records.txt.$!,stopped";
> > # print OUTFILE 'ssh -l $user $host "uptime"';
> > # close(OUTFILE);
> > #};
> > Without the hash marks of course. Where am I going wrong? Help
> > please?
> >
> > His Faithful Servant,
> > Mark-Nathaniel Weisman
> > President / CEO
> > Infinite Visions Educational Systems Inc.
> > Anchorage, Alaska
> > http://www.ivedsys.com
> > [EMAIL PROTECTED]
> >
> >
> > --
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
>
>
> --
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
> --
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]