Ctrl+c および Ctrl+z 操作の中断/一時停止

Ctrl+c および Ctrl+z 操作の中断/一時停止

一時停止したタスクを終了するには、Ctrl+を使用して一時停止したタスクcに割り込み信号を送信します。時にはこれが動作を停止しないことがあります。少なくとも即時ではありません。その後、Ctrl+を使用してジョブを一時停止しzkill %1またはジョブ番号が何であれ)終了できます。

Ctrl仕事を妨げるために+が+より強力な理由は何ですかz? +が機能しない場合があります。この状況で使用できる他のキーの組み合わせはありますか?CtrlcCtrlz

試してみましたstty -aが、リストされている他のキーの組み合わせは何の効果もありませんでした。

ベストアンサー1

Ctrl+ C(制御文字intr):SIGINTプロセスにシグナルを送信し、通常アプリケーションは中断されますが、アプリケーションはこのシグナルを処理できます。たとえば、signal()言語の関数を使用して信号を処理できます。C

Ctrl+ Z(制御文字susp):SIGTSTPプロセスにシグナルを送信し、バックグラウンドに配置して処理SIGINTできます。

プロセスに待機中のI / Oがあり、そのI / Oが完了するのを待つ必要がある場合は、Ctrl+を使用してプロセスがすぐに終了せず、アプリケーションがメモリーから終了します。ただし、+はプロセスとI / Oを一時停止します。技術的には、オペレーティングシステムはCPU時間を提供せず、バックグラウンドプロセスを終了すると一部のI / Oとデータが失われる可能性があります。C
CtrlZ

SIGKILLプロセスを強制終了するには、最も強力な信号である信号9を発行する必要があります。オペレーティングシステムはすぐにシャットダウンしますが、プログラムはこの信号に反応できないため、データが失われる可能性があります。

おすすめ記事