¿Cómo puedo eliminar el proceso del script de shell principal sin eliminar el proceso secundario?

¿Cómo puedo eliminar el proceso del script de shell principal sin eliminar el proceso secundario?

Escribo un script de shell que ejecuta el proceso PHP. Pero no se estaba ejecutando en segundo plano. ¿Puedo eliminar el script de shell sin eliminar el proceso PHP que se está ejecutando?

Respuesta1

Sí, pero primero hay que separarlo. Para separar el proceso hijo del padre, ejecute:

kill -20 PID

kill -18 PID

Ver también:https://stackoverflow.com/questions/625409/how-do-i-put-an-already-running-process-under-nohup

Si está en la misma terminal con el proceso, escriba ctrl-zpara detener el padre y use ps -efpara encontrar el PID del hijo de php. Utilice las líneas de muerte anteriores para separar efectivamente al niño del padre. Luego, fgregrese a su script de shell y debería terminar normalmente, o puede ejecutar kill -9el script de shell por PID o nombre directamente mientras se encuentra en el indicador. De lo contrario, matar al padre (eventualmente) eliminará al niño.

información relacionada