2010-12-28 3 views
1

echo "yes\yes\oops" | programは、長時間実行されるプログラムではうまく機能しません。長時間実行するbashスクリプトと対話します。特定の出力が表示されたときの自動入力

programの出力をファイルにリダイレクトしてから、特定の出力が表示されるまでgrepのループを使用すると思います。しかし、もっと良いアイデアはありますか?

+0

私はあなたが求めていたものに当て推量のビットをしなければなりませんでした。私が間違っていたら、あなたの質問を明確にしてください。 – marcog

+0

あなたはそれが正しいです。 – Cheng

答えて

2

bashが好きな人は、おそらくexpectを探していますか?ここでその上

より:http://wiki.tcl.tk/11583

+0

私は今、ルビーを使用しています。しかし、情報のおかげで。 – Cheng

1

Python、Perl、Ruby、またはスクリプトをプログラムとやり取りする別の言語で記述します。 Pythonではsubprocessを使用します。 Perlではpopen()を使います。プログラムのstdoutを1行ずつ読み、既知のプロンプトと照合して、プログラムの標準入力に書き込んで希望の応答に応答します。

あなたはです。はbashで同じことをしますが、個人的には好きではありません。

関連する問題