1
ゼロ以外の値で終了しないようにしてください
私の本当の目標は、リモートサーバーにSSH接続してTomcatを再起動して使用するスクリプトをローカルで実行することです。 expect 「Server startup in」メッセージを待つか、起動に失敗したことがわかった場合はゼロ以外の値で終了します。私の試みはこのスクリプトです。私はデバッグにlocalhostを使用していますが、「起動に失敗しました」ではなくINFOを使用して人為的に終了させます。 ssh -T localhost <<SSH_EOF docker restart app expect <<EXPECT_EOF set timeout 30 spawn docker logs --since 1s -f app expect_before "INFO" { exit 1 } expect "Server startup in" EXPECT_EOF if [[ $? -eq 0]]; then echo "Success!" else echo "Failed!" fi SSH_EOF スクリプトは最初のINFOメッセージで終了しますが、Successと表示されます。なぜ1で終了しないのでしょうか。