my $host = "host"; my $user = "name"; my $pass = "password"; my $cmd = "pwd"; my $cmd2 = "who"; my $ssh2 = Net::SSH2->new(); $ssh2->connect($host) or die "Unable to connect $@ $! \n"; $ssh2->auth_password($user, $pass) or die "Unable to login $@ $! \n"; my $chan = $ssh2->channel(); $chan->exec($cmd); while (<$chan>) { chomp; print "ONE: [$_]\n"; } $chan->close; my $chan2 = $ssh2->channel(); $chan2->exec("who"); while (<$chan2>) { chomp; print "TWO: [$_]\n"; } $chan2->close; my $chan3 = $ssh2->channel(); $chan3->shell(); print $chan3 "pwd\n"; print "THREE-a: [$_]\n" while <$chan3>; print $chan3 "who\n"; print "THREE-b: [$_]\n" while <$chan3>; $chan3->close; #### ONE: [/usr/local] TWO: [user pts/40 Jun 26 07:04 (192.168.1.247)] TWO: [user pts/41 Jun 26 07:05 (192.168.1.247)] TWO: [user pts/42 Jun 26 07:25 (192.168.1.194)] TWO: [user pts/43 Jun 26 07:57 (192.168.1.194)] THREE-a: [Enter user name: Enter user name: ] THREE-b: [Enter user name: ]