シェルスクリプト作成の中でexpectコマンドを使用しています。
期待値外の値が返却された場合にtimeoutコマンドを使用しているのですが、期待値の値が返却されても(デバックして期待値の値が返却されている事は確認しています)timeout処理になってしまいます。
切り分けとしてtimeout処理箇所を削除すると期待値のコマンドが正常に実行されます。
またtimeout値の値を変更しても、状態は同じでtimeout処理になります
確認としてtimeout -1にしましたが、timeoutにならずに、処理待ちになっています。
上記の事象から推測するに期待値の値が返却されていないように感じますが、timeoutの箇所を削除すると正常にいくので、どのように対応すべきか悩んでいます。
切り分け、対処法がありましたらご教授ください
サンプルコード
expect "password:" {
send "${PW}\n"
} timeout {
exit 4
}