#!/bin/perl use strict; use warnings; use English '-no_match_vars'; use Carp; use Data::Dumper; use Net::SSH2; $Data::Dumper::Terse = 1; $Data::Dumper::Useqq = 1; $OUTPUT_AUTOFLUSH = 1; my $ssh = Net::SSH2->new(trace => -1); #$ssh->debug(1); $ssh->connect('sw209a'); $ssh->auth_password('username','password') or carp $ssh->error; $ssh->timeout(500); my $chan = $ssh->channel(); $chan->pty('tty'); #$chan->pty('tty',{ echo => 0, vintr => ord('k') } ); $chan->blocking(0); $chan->shell(); print {$chan} "\n"; _out ($chan); print {$chan} "displ version\n"; _out($chan); $ssh->disconnect; sub _out { my $ch = shift; while (my $l = <$ch> ) { chomp $l; unless ( $l =~ /^\<\w+\>$/smx ) { print "$l\n"; } ; } return; }