2012-04-16 33 views
1

私は、ターミナルベースのアプリケーションを自動化するためにexpectを使用しています。私は "expect"コマンドの結果に応じてデータを送信します。私は期待して、文字列の一致を行うと、バッファ内のすべての一致しない文字列パターンを格納します。たとえば、$ expect_out(buffer)には直前のコマンドまでに発生したすべての一致しない文字列パターンが含まれていますが、実際には期待される文字列を格納するために$ expect_out(0、string)が使用されます。私はこれらにアクセスするどのような方法があるかどうかを知りたいperlのExpectモジュールのバッファ内容にアクセスする方法

は、コピーのようなバッファは、

$mybuffer = $expect_out(buffer); 

の下に示したが、上記のステートメントは、実際にエラー「構文エラーを投げているよういくつかの変数に内容をバッファ期待期待しますperl_app_hh.plライン72、近くの「$ expect_out(」」

私は期待の内容は、変数にバッファコピーする。したがって、この問題で私を助けてください。

+0

上記のすべては、cpanのperlのexpectモジュールを使用して動作するはずです。 – chaitu

+0

'$ expect_out(0、string)'と '$ expect_out(buffer)'は有効なperl構文ではありません。変更したい既存のコードを表示できますか? – ysth

+0

print( "\ n \ n \ n ******バッファ内容の印刷について... ************ \ n \ n \ n \ n"); #$ mybuffer = $ expect_out(バッファ); print( "\ n期待バッファの内容は"、$ buffer、 "\ n")です。 "$ expect_out(0、string)"を出力します。 – chaitu

答えて

0

あなたが読んでする必要があるとしていますthe documentation for the Expect module$expect(buffer)は有効なPerlではありません。

$exp = Expect->spawn(...); 
$exp->send(...); 
$buffer = $exp->before(); 
関連する問題