Передача ключа возврата через скрипт оболочки

Передача ключа возврата через скрипт оболочки

Я использую phpseclibдля запуска скрипта оболочки на моем сервере с заданным интервалом. Этот скрипт включает использование nohup. По какой-то причине, если нет пользователя, готового отправить SIGINT или возврат к nohupпосле его запуска, он убивает процесс.

Например, если я запускаю скрипт через локальную подсказку, он запускается, то все, что мне нужно сделать, это нажать Enter, и я получаю новую подсказку cmd. Когда я пытаюсь запустить его автоматически, я не могу передать return или SIGINT, и процесс никогда не заканчивается. Идеи?

решение1

Обычно я использовал уродливый фреймворк TCL/Tk под названием Expect для подобных вещей в прошлом. Я заметил, что есть версия php expect под названиемPHP:Ожидаемый. Возможно, это поможет здесь?

Expect должен позволить вам имитировать консольное соединение и отправлять любую последовательность клавиш. Будьте осторожны, хотя эти фреймворки могут быть болезненными. Если вы не привязаны к PHP, взгляните наЭшерчто звучит потрясающе (хотя я никогда этим не пользовался).

Связанный контент