私は3つのプロンプト、prompt1、prompt2、prompt3を持つtest.shのexpectスクリプトを書こうとしています。オプションのプロンプトでexpectを使用するには?
spawn test.sh
expect "prompt1"
send "pass1"
expect "prompt2"
send "pass2"
expect "prompt3"
send "pass3"
しかし、PROMPT2は半分しか時間が発生します。
私のコードは次のようです。 prompt2が表示されない場合は、expectスクリプトが壊れます。それが表示されない場合、prompt2をスキップするexpectコードをどのように記述しますか?
EDIT:
は私のコードを修正:
/usr/bin/expect -c '
spawn ./test.sh
expect {
"prompt1" {
send "pass1\r"
exp_continue
}
"prompt2" {
send "pass2\r"
exp_continue
}
"prompt3" {
send "pass3\r"
exp_continue
}
}
interact return
「
この方法は、スクリプトの残りの部分は実行し、出力を提供します。
あなたは 'ループから抜け出すことができるようにするため、別のパターンをexpect'する必要がありますが。さもなければ、 'interact'行には決して行きません。 –