たけはらと申します。

現在、Expectという tcl ベースの言語のオートメーション機能について調べて
います。Expectについて引用すると:

http://expect.nist.gov/

Expect is a tool for automating interactive applications such as telnet,
ftp, passwd, fsck, rlogin, tip, etc. Expect really makes this stuff
trivial. Expect is also useful for testing these same applications. 

通常なら人間が対話的に使用するFTPコマンド等を簡単に自動化やテストできる
そうです。
ですが、Expectに関する日本語の情報不足、tcl系文法が馴染まないため、RUBY
でExpectを代替出来ないかと考えるようになりました。

検索してみると、expect.rbというのがあり、それで expectっぽいことが出来そ
うなのですが、わずか30行程度であり、どうもExpectのサブセットではないか
と考えています。
例えばExpectでは

expect {
 "welcome" action_1
 "failed" action_2
 timeout  action_3
}

のように、複数パターンとアクションをSWITCH-CASE文の様に書けるのですが、
RUBYでもこのような処理は可能でしょうか?

RUBYでExpectを完全に補えるのなら、過去の資産としてある千行ほどのExpectプ
ログラムをRUBYに移植しようとも考えています。

たけはら