しばらくして、対話型セッションでアプリケーションを再起動し続けます。
だから私はこれが実際に適用されるものが少ない複雑なユースケースであることを知っています。だから残念ながら、これまで多くの有用な指示が見つかりませんでした。 デフォルトでは、ログイン時にCLIアプリケーションを自動的に実行し、シャットダウン時に設定された時間(1分など)が経過した後にアプリケーションを再起動するターミナル専用セッションがあります。シェルはアプリケーションのシャットダウン中に正常に機能する必要があります。 これは私の現在の設定です(これまではうまく機能します)。 端末専用セッションがあります(GUIなし、この場合はLinux Mint)。 ログインすると、対話型CLIアプリケーションが自動的に実行されます(たとえば、.bashrcに追加すると簡単に実行されます)。 ユーザーが自分のCLIアプリケーションを終了したら、通常のbash端末に戻ってコマンドを実行できます(必要に応じて)。 今までは分からない難しい部分が出てきます。 タイムアウトに達するまで端末を使用可能な状態に保ちながら、短時間でユーザー端末でアプリケーションを自動的に再起動するにはどうすればよいですか。 ユーザーは、bashで潜在的にダメージを与える可能性のある操作(他のシェルの開始、実行中のプロセスの終了、またはログアウトなど)を行わないと仮定できます。すばやく完了する1〜2つの異なるコマンドを実行できるはずですが、それ以外は何も実行できません。 私はアプリケーションの実行と新しいbashを起動するコマンドの実行を交互に(ループ内で)実行するスクリプトを実行してこれを実行しようとしましたが、timeout正しく機能しませんでした。 timeoutコマンドを使用して対話型bashセッションを開始できないようです。したがって、これは可能なアプローチかもしれませんが(正しい構文へのポインタは大歓迎です)、他の方法やアイデアもまったく問題ありません。