私はRubyには全く新しく、基本的なスクリプトを作成するためにそれを使用しようとしています。つまりtelnetでマシンに入り、dos ftpクライアントを使っていくつかのファイルを引き出します。パスワード入力のプロンプト中にRuby telnetがハングアップする
私は(コマンドプロンプトから)手動マシンにtelnet接続しようとしたとき、私は持っている問題は、私は次のメッセージが出ます:
Welcome to Microsoft Telnet Client Escape Character is 'CTRL+]' You are about to send your password information to a remote computer in Internet zone. This might not be safe. Do you want to send anyway(y/n):
私はルビーのTelnetクラス(ネット/使用telnet)login()パスワードプロンプトでハングアップします。これは、メッセージにユーザー名を、ユーザー名のプロンプトにパスワードを送信することで、メッセージを考慮していないと思うようになります。どのようにこの状況に対処しますか?
編集:パスワードプロンプト中にログインプロセスがハングアップしているようです。これが上記のメッセージによって引き起こされたのは私の疑念であり、他のアイデアは高く評価されます。私はすべてをエコーしようとした私は、次を得る:
irb(main):030:0> tn = Net::Telnet::new("Host"=>"xxx.xxx.xxx.xxx", "Timeout"=>10) => #<TCPSocket:0x2d8aafc>
irb(main):031:0> tn.login("administrator", "password") {|c| print c}
Welcome to Microsoft Telnet Service
login: administrator
password: Timeout::Error: timed out while waiting for more data
from C:/Ruby/lib/ruby/1.8/net/telnet.rb:551:in `waitfor'
from C:/Ruby/lib/ruby/1.8/net/telnet.rb:685:in `cmd'
from C:/Ruby/lib/ruby/1.8/net/telnet.rb:730:in `login'
これはおそらく問題がタイムアウト時間があまりにも短かったからです(回答を参照) –