
Estoy usando phpseclib
para ejecutar un script de shell en mi servidor en un intervalo determinado. Ese script implica el uso de nohup
. Por el motivo que sea, si no hay un usuario listo para enviar SIGINT o devolverlo nohup
una vez iniciado, el proceso finaliza.
Por ejemplo, si ejecuto el script a través de un mensaje local, entonces todo lo que tengo que hacer es presionar Enter y aparece un nuevo mensaje cmd. Cuando intento ejecutarlo automáticamente, no puedo pasar la devolución o un SIGINT y el proceso nunca termina. ¿Ideas?
Respuesta1
Normalmente he usado un marco TCL/Tk feo llamado Expect para hacer este tipo de cosas en el pasado. Noté que hay una versión PHP de expect llamadaPHP:esperar. ¿Quizás eso ayude aquí?
Expect debería permitirle simular una conexión de consola y enviar cualquier secuencia de claves. Tenga en cuenta que estos marcos pueden resultar dolorosos. Si no estás vinculado a PHP, echa un vistazo aashierlo cual suena increíble (aunque nunca lo he usado).