Ruby 1.9.3 リファレンスマニュアル > ライブラリ一覧 > net/telnetライブラリ > Net::Telnetクラス > waitfor

instance method Net::Telnet#waitfor

waitfor(opt) -> String|nil[permalink][rdoc]
waitfor(opt) {|buf| ...} -> String|nil

指定した正規表現にマッチする文字列がホストから来るまでデータを読み込みます。

opt に正規表現を指定した場合には、それにマッチするまで読みこみます。 opt にハッシュを指定した場合には、以下のオプションを指定できます。

"Match" 待ち合わせたい正規表現を指定します。

"Prompt" "Match"と同じです。"Match"が指定されなかった場合にのみ使われます。

"String" "Match"と似ていますが、与えられた String のインスタンスに 完全に一致するデータを待ち合わせます。"Match"も"Prompt"も指定されなかった 場合にのみ利用されます。

"Timeout" タイムアウトの秒数を指定します。指定しない場合は Net::Telnet.new で 指定した"Timeout"の値をデフォルト値として利用します。

"Waittime" 指定した正規表現にマッチしてからこれで指定した秒数だけホストからの 通信がない場合にこのメソッドが終わります。指定しない場合は Net::Telnet.new で 指定した"Waittime"の値をデフォルト値として利用します。

"FailEOF" これを真にすると、ホスト側から接続を切られた場合には例外 IOError が発生するようになります。偽だとホスト側から接続を切られた場合にはブロックに nil が渡されます。さらにこのオプションが偽で、ホストからのデータが 一切来なかった場合には nil を返します。デフォルトは偽です。

"Match" "Prompt" "String" のいずれかは必ず指定する必要があります。

ブロックを指定した場合、ホストからの文字列を引数にブロックを逐次呼びだします。

[PARAM] opt:
待ち合わせに必要な情報を指定します。正規表現を指定するとそれにマッチするデータまで待ち、ハッシュを指定すると正規表現とオプションを指定できます。
[EXCEPTION] TimeoutError:
タイムアウトした場合に発生します

[SEE_ALSO] Net::Telnet.new