Bash

如何暫停和恢復程序

  • February 14, 2017

在 bash 終端中,我可以點擊Control+Z來暫停任何正在執行的程序……然後我可以鍵入fg以恢復程序。

如果我只有 PID,是否可以暫停程序?如果是這樣,我應該使用什麼命令?

我正在尋找類似的東西:

suspend-process $PID_OF_PROCESS

然後恢復它

resume-process $PID_OF_PROCESS

您可以使用kill來停止該過程。

對於程序的“禮貌”停止(正常使用時更喜歡這個),發送 SIGTSTP:

kill -TSTP [pid]

對於“硬”停止,發送 SIGSTOP:

kill -STOP [pid]

請注意,如果您嘗試通過 PID 停止的程序在您的 shell 的作業表中,它可能會在那裡保持可見,但會終止,直到該程序fg再次被 ’d 執行。

要恢復程序的執行,請發送 SIGCONT:

kill -CONT [pid]

您應該kill為此使用該命令。

要更詳細-您必須指定正確的信號,即

$ kill -TSTP $PID_OF_PROCESS

用於暫停程序和

$ kill -CONT $PID_OF_PROCESS

恢復它。記錄在這裡

引用自:https://unix.stackexchange.com/questions/2107