スクリプトの次の行に進む前に、正確な文字列が一致するのを待機するようにスクリプトでコマンドを期待する方法を知りたいです。
Bourne シェル (sh) スクリプト:
#!/bin/sh
#!/usr/bin/expect
spawn ssh -Y localuser@lbblr-tirumala
expect -exact "localuser@lbblr-tirumala's password: "
# replace password with ur own passwd
send "geomax45\r"
# replace the prompt with ur own prompt
expect "localuser@lbblr-tirumala:~$ "
# run application
send "./sample\r"
expect "*Menu*\r
1. print hello world\r
2. print Bye world\r
3. quit\r
enter choice: "
# enter choice 1
send "1\r"
expect "Bye world\r
*Menu*\r
1. print hello world\r
2. print Bye world\r
3. quit\r
enter choice: $"
# enter choice 2
send "2\r"
上記のコードでは、1 を入力した後、「Bye world\r......」という文字列が画面に表示されるまで待機する必要があります。しかし、画面にはまったく異なる文字列が表示されますが、コードは次の行を実行し、オプション 2 を入力しています。expect コマンドの完全な文字列が一致するまで待機する必要があります。
正確な文字列の一致が発生するまで待機するように使用できる、より厳密なコマンドがあるかどうかを知りたいです。この問題で私を助けてください