質問: デタッチされたプロセスにターミナルを接続するにはどうすればよいですか? 次のように、端末からプロセスを切り離しました。$ process & そのターミナルは長い間閉じられていますが、processはまだ実行中です。そのプロセスのstdinにいくつかのコマンドを送信します。それは可能ですか?
回答: 元の端末にアクセスできなくなった場合...reptyrはあなたが望むものかもしれません、参照 https://serverfault.com/a/284795/187998 そこからの引用:まさにそれを行う reptyr を見てください。 githubページにはすべての情報があります。 reptyr-プログラムを「再結合」するためのツール。 reptyrは、既存の実行中のプログラムを取得して新しい端末に接続するためのユーティリティです。 sshを介して実行時間の長いプロセスを開始しましたが、終了する必要があり、中断したくないですか?画面を開始し、reptyrを使用してそれを取得し、sshセッションを終了して家に向かいます。 使用法 reptyr pid 「reptyr pid」は、id pidのプロセスを取得し、現在の端末にアタッチします。 接続後、プロセスは^ cおよび^ zを含む新しいターミナルからの入力を受け取り、出力を新しいターミナルに書き込みます。 (残念ながら、バックグラウンドで使用している場合でも、古いターミナルで「bg」または「fg」を実行する必要があります。これは、シェルにパッチを適用せずに適切な方法で修正することはおそらく不可能です。)