use Net::OpenSSH;
my $host = "$ip";
my $user = 'root';
my $passphrase = 'uxxxxxD';
my $key = '/root/.ssh/id_rsa';
my $cmd="sh $script";
my %param = (
user => $user,
passphrase => $passphrase,
key_path => $key,
timeout => 100
);
my $ssh = Net::OpenSSH->new($host,%param);
my ($stdout,$stderr,$exit) = $ssh->capture2("$cmd");
my $exit = ($? >> 8);
print "\$exit is $exit\n";
sleep (10);
if($exit == 0){
print "publish success\n";
print $stdout;
open( F, ">>", "/home/scan/mojo/log/$app-$ip-$XDATE.log" );
print F ("ErrorCode:$exit\n");
print F ("ErrorMsg:$stderr\n");
print F ("$stdout\n");
close F;
$c->render(text => 'publish success')
} else {
print $ssh->error;
$stderr and print $stderr;
open( F, ">>", "/home/scan/mojo/log/$app-$ip-$XDATE.log" );
print F ("ErrorCode:$exit\n");
print F ("ErrorMsg:$stderr\n");
print F ("$stdout\n");
close F;
$c->render(text => "ErrorCode:$exit;ErrorMsg:$stderr")
}
Net::OpenSSH 模块使用
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
上一篇:第2次增加ssh 主机信任脚本
下一篇:Corrupted MAC on input at /usr/local/perl/lib/site_perl/5.22.1/x86_64-linux/Net/SSH/Perl/Packet.pm l
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
漏洞修复-openssh升级
升级openssh到最新版本
旧版 配置文件 远程连接 SSH -
openssh
正在使用的文件在windows下无法使用ftp工具下
openssh sed Windows ide