it-swarm-eu.dev

Jak pozastavit a obnovit procesy

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
151
Stefan

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]
181
Steve Burdine

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 .

48
maxschlepzig