Я пишу сценарий оболочки, который запускает процесс PHP. Но это не было в фоновом режиме. Могу ли я убить скрипт оболочки, не убивая запущенный процесс PHP?
1 ответ
Да, но вы должны сначала отделить это. Чтобы отделить дочерний процесс от родительского процесса, выполните:
kill -20 PID
kill -18 PID
Смотрите также: https://stackoverflow.com/questions/625409/how-do-i-put-an-already-running-process-under-nohup
Если вы находитесь на одном терминале с процессом, введите ctrl-z
чтобы остановить родительский элемент , и используйте ps -ef
чтобы найти PID дочернего элемента php. Используйте строки уничтожения выше, чтобы эффективно отделить дочерний элемент от родительского. Затем верните fg
обратно в свой скрипт оболочки, и он должен завершиться как обычно, или вы можете kill -9
сценарий оболочки по PID или имени, пока вы находитесь в приглашении. В противном случае, убийство родителя (в конечном итоге) уничтожит ребенка.