V bash terminálu mohu zasáhnout Control+Z pozastavit jakýkoli běžící proces ... pak mohu napsat fg
pro pokračování procesu.
Je možné proces pozastavit, pokud mám pouze PID? A pokud ano, jaký příkaz mám použít?
Hledám něco jako:
suspend-process $PID_OF_PROCESS
a poté s ním pokračovat
resume-process $PID_OF_PROCESS
K zastavení procesu můžete použít kill
.
Pro „zdvořilé“ zastavení procesu (preferujte toto pro běžné použití), pošlete SIGTSTP:
kill -TSTP [pid]
Pro „tvrdou“ zastávku pošlete SIGSTOP:
kill -STOP [pid]
Všimněte si, že pokud se proces, který se pokoušíte zastavit pomocí PID, nachází v tabulce úloh vaší Shell, může tam zůstat viditelný, ale ukončen, dokud není proces znovu fg
'd.
Chcete-li pokračovat v provádění procesu, poslal SIGCONT:
kill -CONT [pid]
K tomu byste měli použít příkaz kill
.
Chcete-li být podrobnější - musíte zadat správný signál , tj.
$ kill -TSTP $PID_OF_PROCESS
pro pozastavení procesu a
$ kill -CONT $PID_OF_PROCESS
za obnovení. Dokumentováno zde .