なにか良い方法ないでしょうか。
Net::SSH::ExpectやNet::Expectも試したですが、実行結果出力が乱れてしまいやりたいこと(複数ホストにちらばるスクリプトの調査)ができなくなってしまうので左記モジュールは避けたいです。Expectコマンドも同様の理由で避けたいです。
また、/etc/sudoersを勝手に編集することができないためパスワード無しでスイッチするなどの方法も使えないです。
Net::SSH::Perlでやりたいです。おねがいします。すごいひと。
ちなみに以下がそのコードです。@cmdlistにコマンドが入ってます。
$OUTFILEに実行結果をロギングしています。
▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼
my $ssh = Net::SSH::Perl->new($host,debug => 1);
$ssh->login($user, $pass);
for my $cmd (@cmdlist){
my($stdout, $stderr, $exit) = $ssh->cmd($cmd);
print $OUTFILE $stdout;
}
▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲
権限のない人はsudoは使えない。http://www