bg コマンドはプロセスをバックグラウンドに送信しません。

bg コマンドはプロセスをバックグラウンドに送信しません。

ctrl-zを使用してプロセスを一時停止し、bgコマンドを使用してバックグラウンドで送信しました。残念ながら、プロセスはバックグラウンドで送信されず、フォアグラウンドで実行されているように見えます。その後、もう一度Ctrl-Zを押して再び一時停止します。残念ながら、キーの組み合わせは応答しなくなり、プロセスは進行中です。さらに悪いことは、コマンドがfor多くのプロジェクトのループであるということです。 Ctrl-Cを押すと、最後の反復まで次の反復で操作が再開されます。

macOSのiTerm内のtmuxで実行されます。

ベストアンサー1

説明によると、このbgコマンドは機能します。それ以外の場合、ctrl-z と ctrl-c は引き続き機能します。

プロセスがバックグラウンドにあっても、まだ出力を送信できないという意味ではありません。これを見たくない場合は、実行しstty tostopてバックグラウンドジョブが出力を送信しようとすると停止し、fg必要に応じてフォアグラウンド()で続行できます。

このようにバックグラウンドで騒々しいプロセスが実行されている場合は、Enterキーを数回押してもまだシェルプロンプトが表示されることがあります。次のようないくつかの方法でこの状況を解決できます。

  • 盲目的にkillコマンドを入力して殺すことができます。
  • stty tostop上記のように盲目的に入力できます。
  • 入力してfg前景に戻すことができます(2つ以上ない場合はエラーが発生したいと思います)。その後、ctrl-zを使用して停止するか、ctrl-cを使用して終了できます。
  • グラフィカル環境またはターミナルマルチプレクサ(tmuxなど)にある場合は、別のウィンドウを開き、ps問題のあるプロセスを使用または検索してtopそこからシャットダウンできます。

おすすめ記事