Dans le terminal bash, je peux frapper Control+Z pour suspendre tout processus en cours ... alors je peux taper fg
pour reprendre le processus.
Est-il possible de suspendre un processus si je n'ai que son PID? Et si oui, quelle commande dois-je utiliser?
Je cherche quelque chose comme:
suspend-process $PID_OF_PROCESS
puis de le reprendre avec
resume-process $PID_OF_PROCESS
Vous pouvez utiliser kill
pour arrêter le processus.
Pour un arrêt "poli" du processus (préférez-le pour une utilisation normale), envoyez SIGTSTP:
kill -TSTP [pid]
Pour un arrêt "dur", envoyez SIGSTOP:
kill -STOP [pid]
Notez que si le processus que vous essayez d'arrêter par PID se trouve dans la table des travaux de votre shell, il peut y rester visible, mais terminé, jusqu'à ce que le processus soit à nouveau fg
'.
Pour reprendre l'exécution du processus, envoyez SIGCONT:
kill -CONT [pid]
Vous devez utiliser la commande kill
pour cela.
Pour être plus verbeux - vous devez spécifier le bon signal , c'est-à-dire.
$ kill -TSTP $PID_OF_PROCESS
pour suspendre le processus et
$ kill -CONT $PID_OF_PROCESS
pour le reprendre. Documenté ici .