私は Net::SSH2
を以下のPerlコードで使用しようとしていますが、このエラーが発生しています。 xx.xx.xxx.xxへの接続に失敗しました::SSH:test.plライン9で不正なファイルディスクリプタtest.pl線9
ネット:: SSH2で廃止されて無効コンテキストで接続呼び出しvoidのコンテキストでの呼び出しの呼び出しは非推奨です
。
use strict;
use Net::SSH2;
#use Net::SSH2::Expect;
#my $Hostname = 'xx.xx.xx.xx';
my $ssh = Net::SSH2->new();
#$ssh->timeout(10);
$ssh->connect('xx.xx.xx.xx');
誰かがこれで私を助けてくださいことはできますか?
それはあなたが使用したい: '$ ssh->( 'XX.XX.XX.XX')接続または$ ssh-> die_with_error;' – ikegami
ネット:: SSH2は、あなたがしたいので、非推奨の警告があります'connect'の戻り値を確認してください。それは '$ ssh-> connect(...)またはssh2-> die_with_error'を行うことを示唆しています。あなたはそれをやっていないので、それ自体が直接死ぬ、また警告を出します。 _Badファイル記述子_エラーは本当の問題です。 – simbabque
@simbabque、 "*ファイル記述子のエラーが間違っています。" voidコンテキスト警告を出力すると、エラーが発生する可能性があります。 OPは 'または$ ssh-> die_with_error'を追加してプログラムを再実行することから始めるべきです。さらに、ボイドの文脈では、それが問題ではないときでも、常に「接続に失敗しました」と表示されます。 – ikegami