Ver Mensaje Individual
  #1 (permalink)  
Antiguo 12/06/2017, 05:48
neck
 
Fecha de Ingreso: mayo-2006
Mensajes: 71
Antigüedad: 18 años
Puntos: 0
Para un programa externo ejecutado con exec()

Hola amigos,

Una de las virtudes de PHP es poder ejecutar programas externos, por ejemplo, con la función exec(). Normalmente puedo ejecutar comandos de consola desde php sin problemas pero ahora necesito terminarlos.

Por ejemplo:

Código PHP:
<?php

exec
('whoami');

// whoami comando nos devuelve el usuario donde nos encontramos

?>
Últimamente estoy ejecutando un programa que necesita ser parado con el comando 'q' pero sinceramente no se como puedo recuperar el recurso en cuestión para poder enviarle el nuevo comando de STOP y pare la ejecución.

No creo que pudiera ser con la siguiente lógica:

Código PHP:
<?php

exec
('programa argumento1 argumento2');

//Empieza la ejecución que nunca parará hasta que enviemos el comando 'q'

exec('programa q');

//el programa para la ejecución con 'q'

?>
Creo que el segundo exec() comenzara una tarea nueva y no se asociaría a la primera pero ahí es donde esta mi duda.

Tampoco se si los otros comandos de ejecución de programas de php como estos

escapeshellarg
escapeshellcmd
passthru
proc_​close
proc_​get_​status
proc_​nice
proc_​open
proc_​terminate
shell_​exec
system

podrían ser mas beneficiosos en este tema.

Saludos amigos espero que encaminen sobre este tema.